Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cập nhật trường thành giá trị cụ thể nếu là NULL trong MySQL

Sử dụng IS NULL trong mệnh đề WHERE của UPDATE để chỉ cập nhật các hàng có giá trị NULL.

Tạo bảng và dữ liệu có NULL

mysql> CREATE TABLE DemoTable(StudentScore INT); 
Query OK, 0 rows affected (0.47 sec)

mysql> INSERT INTO DemoTable VALUES(89), (NULL), (45), (NULL), (56); 
Query OK, 5 rows affected

Cập nhật NULL thành 30

mysql> UPDATE DemoTable SET StudentScore = 30 WHERE StudentScore IS NULL; 
Query OK, 2 rows affected (0.34 sec)

Kết quả:

+--------------+
| StudentScore |
+--------------+
| 89           |
| 30           |
| 45           |
| 30           |
| 56           |
+--------------+

Lưu ý: Không dùng WHERE StudentScore = NULL (luôn false vì NULL ≠ NULL trong SQL). Luôn dùng IS NULL hoặc IS NOT NULL.

Cách thay thế khi SELECT: Dùng COALESCE(StudentScore, 30) hoặc IFNULL(StudentScore, 30) để hiển thị 30 thay vì NULL mà không sửa dữ liệu.