Giá trị NULL của MySQL
Giá trị NULL là gì?
Trường có giá trị NULL là trường không có giá trị.
Nếu một trường trong bảng là tùy chọn, có thể chèn bản ghi mới hoặc cập nhật bản ghi mà không cần thêm giá trị vào trường này. Sau đó, trường sẽ được lưu với giá trị NULL.
Lưu ý: Giá trị NULL khác với giá trị 0 hoặc trường chứa khoảng trắng. Trường có giá trị NULL là trường đã bị bỏ trống trong quá trình tạo bản ghi!
Làm thế nào để kiểm tra giá trị NULL?
Không thể kiểm tra các giá trị NULL bằng các toán tử so sánh, chẳng hạn như =, <hoặc <>.
Chúng ta sẽ phải sử dụng toán tử IS NULL
and
IS NOT NULL
để thay thế.
Cú pháp LÀ NULL
SELECT column_names
FROM table_name
WHERE column_name IS NULL;
Cú pháp KHÔNG ĐỦ
SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL;
Cơ sở dữ liệu Demo
Dưới đây là lựa chọn từ bảng "Khách hàng" trong cơ sở dữ liệu mẫu Northwind:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 |
Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
Toán tử IS NULL
Toán tử IS NULL
được sử dụng để kiểm tra các giá trị trống (giá trị NULL).
SQL sau liệt kê tất cả các khách hàng có giá trị NULL trong trường "Địa chỉ":
Thí dụ
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address
IS NULL;
Mẹo: Luôn sử dụng IS NULL để tìm kiếm các giá trị NULL.
Toán tử KHÔNG ĐẦY ĐỦ
Toán tử IS NOT NULL
được sử dụng để kiểm tra các giá trị không trống (giá trị NOT NULL).
SQL sau liệt kê tất cả các khách hàng có giá trị trong trường "Địa chỉ":
Thí dụ
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address
IS NOT NULL;