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

Cập nhật giá trị NULL thành giá trị mặc định bằng COALESCE() + UPDATE

Kết hợp COALESCE() với UPDATE ... WHERE để thay NULL bằng giá trị cụ thể.

Dữ liệu mẫu: Bảng Employee có Salary=NULL

mysql> SELECT * FROM Employee;
+----+--------+--------+
| ID | Name   | Salary |
+----+--------+--------+
| 1  | Gaurav | 50000  |
| 2  | Rahul  | 20000  |
| 3  | Advik  | 25000  |
| 4  | Aarav  | 65000  |
| 5  | Ram    | NULL   |
| 6  | Mohan  | NULL   |
+----+--------+--------+

Cập nhật có điều kiện

mysql> UPDATE Employee SET Salary = COALESCE(Salary, 20000) WHERE Id = 5;
Query OK, 1 row affected

mysql> UPDATE Employee SET Salary = COALESCE(Salary, 30000) WHERE Id = 6;
Query OK, 1 row affected

Kết quả sau cập nhật

mysql> SELECT * FROM Employee;
+----+--------+--------+
| ID | Name   | Salary |
+----+--------+--------+
| 1  | Gaurav | 50000  |
| 2  | Rahul  | 20000  |
| 3  | Advik  | 25000  |
| 4  | Aarav  | 65000  |
| 5  | Ram    | 20000  |
| 6  | Mohan  | 30000  |
+----+--------+--------+

Cơ chế: COALESCE(Salary, 20000) trả về Salary nếu không NULL, ngược lại 20000. Chỉ cập nhật hàng có ID chỉ định.