Giá trị NULL trong SQL là thuật ngữ được sử dụng để đại diện cho một giá trị còn thiếu. Một giá trị NULL trong một bảng là một giá trị trong một trường dường như trống.
Trường có giá trị NULL là trường không có giá trị. Điều rất quan trọng là phải hiểu rằng một giá trị NULL khác với giá trị bằng không hoặc một trường có chứa khoảng trống (space).
Cú pháp
Cú pháp cơ bản của NULL trong khi tạo một bảng.
CREATE TABLE CUSTOMERS( ID INT NOT NULL, NAME VARCHAR (20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25) , SALARY DECIMAL (18, 2), PRIMARY KEY (ID) );
Ở đây, NOT NULL biểu thị rằng cột phải luôn chấp nhận một giá trị rõ ràng của kiểu dữ liệu nhất định. Có hai cột mà chúng ta không sử dụng NOT NULL, nghĩa là các cột này có thể là NULL.
Trường có giá trị NULL là giá trị đã để trống trong quá trình tạo bản ghi.
Ví dụ
Giá trị NULL có thể gây ra vấn đề khi select dữ liệu. Tuy nhiên, bởi vì khi so sánh giá trị không xác định với bất kỳ giá trị nào khác, kết quả sẽ luôn được biết và không được đưa vào kết quả. Bạn phải sử dụng toán tử IS NULL hoặc IS NOT NULL để kiểm tra giá trị NULL.
Xem bảng CUSTOMERS sau có các bản ghi như hình dưới đây
+----+----------+-----+-----------+----------+ | ID | NAME | AGE | ADDRESS | SALARY | +----+----------+-----+-----------+----------+ | 1 | Ha Anh | 32 | Da Nang | 2000.00 | | 2 | Van Ha | 25 | Ha Noi | 1500.00 | | 3 | Vu Bang | 23 | Vinh | 2000.00 | | 4 | Thu Minh | 25 | Ha Noi | 6500.00 | | 5 | Hai An | 27 | Ha Noi | 8500.00 | | 6 | Hoang | 22 | Ha Noi | | | 7 | Binh | 24 | Ha Noi | | +----+----------+-----+-----------+----------+
Sau đây là cách sử dụng toán tử IS NOT NULL .
SELECT ID, NAME, AGE, ADDRESS, SALARY FROM CUSTOMERS WHERE SALARY IS NOT NULL;
Điều này sẽ tạo ra kết quả sau:
+----+----------+-----+-----------+----------+ | ID | NAME | AGE | ADDRESS | SALARY | +----+----------+-----+-----------+----------+ | 1 | Ha Anh | 32 | Da Nang | 2000.00 | | 2 | Van Ha | 25 | Ha Noi | 1500.00 | | 3 | Vu Bang | 23 | Vinh | 2000.00 | | 4 | Thu Minh | 25 | Ha Noi | 6500.00 | | 5 | Hai An | 27 | Ha Noi | 8500.00 | +----+----------+-----+-----------+----------+
Sau đây là cách sử dụng toán tử IS NULL .
SELECT ID, NAME, AGE, ADDRESS, SALARY FROM CUSTOMERS WHERE SALARY IS NULL;
Điều này sẽ tạo ra kết quả sau:
+----+----------+-----+-----------+----------+ | ID | NAME | AGE | ADDRESS | SALARY | +----+----------+-----+-----------+----------+ | 6 | Hoang | 22 | Ha Noi | | | 7 | Binh | 24 | Ha Noi | | +----+----------+-----+-----------+----------+