Tóm tắt
Dùng UPDATE ... SET cot = gia_tri WHERE cot IS NULL để thay thế NULL bằng giá trị cụ thể. Lưu ý dùng IS NULL chứ không phải = NULL.
Ví dụ
1. Tạo bảng
CREATE TABLE OrderDemo (
OrderId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
OrderPrice INT,
OrderDatetime DATETIME
);
2. Dữ liệu có NULL
INSERT INTO OrderDemo (OrderPrice, OrderDatetime) VALUES
(200, '2016-09-12'),
(NULL, '2002-11-18'),
(1000, '2017-12-28');
3. Cập nhật NULL thành 6500
UPDATE OrderDemo SET OrderPrice = 6500 WHERE OrderPrice IS NULL;
4. Kết quả
+---------+------------+---------------------+
| 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 |
+---------+------------+---------------------+
Lưu ý
WHERE OrderPrice = NULL**không bao giờ khớp** – NULL không bằng bất kỳ giá trị nào, kể cả NULL.- Dùng
IS NULL/IS NOT NULL. COALESCE(OrderPrice, 0)trong SELECT để hiển thị giá trị thay thế mà không sửa dữ liệu.IFNULL()/NULLIF()cho logic phức tạp hơn.