Để hiển thị giá trị tùy chỉnh (custom value) thay cho NULL hoặc chuỗi rỗng (''), dùng hàm IF() kiểm tra cả hai điều kiện.
Ví dụ minh họa
Tạo bảng:
mysql> create table DemoTable (
Value varchar(100)
);
Chèn dữ liệu (có NULL và ''):
mysql> insert into DemoTable values('100');
mysql> insert into DemoTable values('');
mysql> insert into DemoTable values('200');
mysql> insert into DemoTable values(null);
Hiển thị dữ liệu:
mysql> select * from DemoTable;
Kết quả:
+-------+ | Value | +-------+ | 100 | | | | 200 | | NULL | +-------+
Truy vấn IF thay NULL/'' bằng 'Garbage Value'
mysql> select if(Value IS NULL or Value='','Garbage Value',Value) AS Result from DemoTable;
Kết quả:
+---------------+ | Result | +---------------+ | 100 | | Garbage Value | | 200 | | Garbage Value | +---------------+
Giải thích:
Value IS NULL: Kiểm tra NULLValue = '': Kiểm tra chuỗi rỗngOR: Nếu một trong hai TRUE → trả về 'Garbage Value'- Ngược lại: Trả về Value gốc
Cách thay thế chuẩn SQL: COALESCE(NULLIF(Value, ''), 'Garbage Value') - NULLIF(Value,'') chuyển '' thành NULL, COALESCE lấy giá trị đầu tiên NOT NULL.
Ứng dụng: Làm sạch dữ liệu hiển thị, export CSV/Excel thay NULL/rỗng bằng "N/A", "Không có", "Chưa cập nhật", v.v.