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

Kiểm tra giá trị NULL trong MySQL dùng IF()

Hàm IF(điều_kiện, giá_trị_true, giá_trị_false) cho phép kiểm tra NULL và trả về giá trị/thông báo tùy ý.

Ví dụ

Tạo bảng có cột Age chứa NULL:

mysql> create table DemoTable ( 
    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    Name varchar(200), 
    Age int 
); 
Query OK, 0 rows affected (0.44 sec)

Dữ liệu: John(23), Sam(NULL), Mike(23), David(21), Carol(NULL)

Kiểm tra NULL hiển thị thông báo

mysql> select if(Age IS NULL,'Age is missing',Age) from DemoTable;
+--------------------------------------+
| if(Age IS NULL,'Age is missing',Age) |
+--------------------------------------+
| 23                                   |
| Age is missing                       |
| 23                                   |
| 21                                   |
| Age is missing                       |
+--------------------------------------+

So sánh:

  • IF(Age IS NULL, ...) - kiểm tra NULL
  • IFNULL(Age, 'Age is missing') - ngắn gọn hơn, tương đương
  • COALESCE(Age, 'Age is missing') - chuẩn ANSI, hỗ trợ nhiều đối số

Lưu ý: Age = NULL luôn FALSE (không dùng được). Phải dùng IS NULL hoặc IS NOT NULL.