Bằng cách sử dụng NULL
bạn có thể phân biệt giữa "không đặt dữ liệu" và "đặt dữ liệu trống".
Một số điểm khác biệt:
-
LENGTH
trong tổng sốNULL
làNULL
, mộtLENGTH
của một chuỗi trống là0
. -
NULL
s được sắp xếp trước các chuỗi trống. -
COUNT(message)
sẽ đếm các chuỗi trống nhưng không đếmNULL
s -
Bạn có thể tìm kiếm một chuỗi trống bằng cách sử dụng một biến bị ràng buộc nhưng không phải cho
NULL
. Truy vấn này:SELECT * FROM mytable WHERE mytext = ?
sẽ không bao giờ khớp với
NULL
trongmytext
, bất kỳ giá trị nào bạn chuyển từ khách hàng. Để khớp vớiNULL
s, bạn sẽ phải sử dụng truy vấn khác:SELECT * FROM mytable WHERE mytext IS NULL