liên hiệp không chỉ là những gì OP được yêu cầu, cũng như IFNULL:
SELECT Nz(MightBeNullVar, 0) FROM ... (MS Access version)
SELECT COALESCE(MightBeNullVar, 0) FROM ... (MySQL version)
SELECT IFNULL(MightBeNullVar, 0) FROM ... (MySQL version)
Sự khác biệt là liên hiệp có thể tìm kiếm thông qua nhiều biến và trở lại là người đầu tiên không null một:
SELECT COALESCE(MightBeNullVar, MightAlsoBeNullVar, CouldBeNullVar, 0) FROM ... (MySQL version)
mỗi giá trị này sẽ trả về 0 (không) nếu không có giá trị nào có giá trị được đặt (là rỗng).
IFNULL là (khá vô nghĩa) nhanh hơn. Có thể có những thứ tốt hơn khác để tối ưu hóa trong truy vấn của bạn trước khi làm phiền với IFNULL và các vấn đề về COALESCE. Nếu bạn có nhiều thứ để kiểm tra, hãy sử dụng COALESCE. Nếu bạn chỉ có một giá trị duy nhất để kiểm tra, hãy sử dụng IFNULL.
IFNULL là tương đương cho mysql. –