如何更新 MySQL 中字段的 NULL 值?

mysqlmysqli database更新于 2024/12/15 8:44:17

首先我们创建一个表 −

mysql> create table OrderDemo
   -> (
   -> OrderId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> OrderPrice int,
   -> OrderDatetime datetime
   -> );
Query OK, 0 rows affected (0.66 sec)

示例

现在,您可以使用 insert 命令在表中插入一些记录。查询如下 −

mysql> insert into OrderDemo(OrderPrice,OrderDatetime) values(200,'2016-09-12');
Query OK, 1 row affected (0.24 sec)
mysql> insert into OrderDemo(OrderPrice,OrderDatetime) values(NULL,'2002-11-18');
Query OK, 1 row affected (0.26 sec)
mysql> insert into OrderDemo(OrderPrice,OrderDatetime) values(1000,'2017-12-28');
Query OK, 1 row affected (0.15 sec)

使用 select 语句显示表中的所有记录。查询如下 −

mysql> select *from OrderDemo;

输出

+---------+------------+---------------------+
| OrderId | OrderPrice | OrderDatetime       |
+---------+------------+---------------------+
|       1 |        200 | 2016-09-12 00:00:00 |
|       2 |       NULL | 2002-11-18 00:00:00 |
|       3 |       1000 | 2017-12-28 00:00:00 |
+---------+------------+---------------------+
3 rows in set (0.00 sec)

以下是在 OrderPrice 列中添加一行的查询,其中 OrderPrice 为 NULL,即更新 NULL −

mysql> update OrderDemo set OrderPrice = 6500 where OrderPrice IS NULL;
Query OK, 1 row affected (0.17 sec)
Rows matched: 1 Changed: 1 Warnings: 0

现在再次检查表记录。查询如下 −

mysql> select *from OrderDemo;

输出

+---------+------------+---------------------+
| OrderId | OrderPrice | OrderDatetime       |
+---------+------------+---------------------+
|       1 |        200 | 2016-09-12 00:00:00 |
|       2 |       6500 | 2002-11-18 00:00:00 |
|       3 |       1000 | 2017-12-28 00:00:00 |
+---------+------------+---------------------+
3 rows in set (0.00 sec)

NULL 值已被替换为 6500。


相关文章


有用资源