Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

วิธีอัปเดตค่า NULL ในฟิลด์ของ MySQL

มาสร้างตารางก่อน:

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

ตัวอย่าง

แทรกข้อมูล (มีค่า NULL):

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)

แสดงข้อมูล:

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)

อัปเดตค่า NULL ใน OrderPrice:

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 แล้ว