Tuy nhiên, bạn cần hiểu những giá trị này NULL là gì và ý nghĩa của chúng để có thể được thông tin chi tiết về dữ liệu chính xác và giao diện. Bài viết này sẽ khám phá cách sử dụng các lệnh SQL để đếm các giá trị NULL và NOT NULL.
1. Giá trị NULL là gì?
Giá trị NULL có nghĩa là không có giá trị, không phải số 0 hoặc khoảng trắng.
Do đó, hệ thống so sánh toán tử như =, <, > và <> không thể được sử dụng với nó. Tuy nhiên, nếu được sử dụng, kết quả sẽ là UNKNOWN (không xác định (.
Vui lòng coi giá trị NULL là một trường để trống trong quá trình tạo bản ghi. Bạn có thể tạo bảng và chèn cột mới mà không cần thêm giá trị. Do đó, trường đó sẽ có giá trị NULL. Giá trị NULL cũng có thể được chèn vào các cột thuộc bất kỳ loại dữ liệu nào.
Để chứng minh điều này, bạn nên tạo một bảng SQL mới bằng cú pháp bên dưới:
CREATE TABLE Employee (
FirstName VARCHAR(50),
LastName VARCHAR(50),
PhoneNum VARCHAR(15),
Salary FLOAT
);
INSERT INTO Employee (FirstName, LastName, PhoneNum, Salary)
VALUES
('Maxwell', 'Ayomide', '812-345-6789', 150000.00),
('David', 'Tosin', NULL, 450000.00),
('Eben', 'Teniola', '912-345-6789', 590000.00),
('Kenneth', 'Olisa', '809-456-8732', NULL),
('Esther', 'Oge', NULL, NULL);
Bạn cũng có thể cập nhật các giá trị NULL trong một bảng bằng cách sử dụng lệnh UPDATE. Để thực hiện điều này, hãy sử dụng cú pháp dưới đây.
UPDATE Employee
SET FirstName = 'Esther'
WHERE Salary = 200000;
Để xem kết quả, hãy chạy:
SELECT * FROM Employee;
2. SQL giá trị NULL hữu ích trong những trường hợp này?
Giá trị NULL có thể được sử dụng trong nhiều vấn đề khác trong SQL:
- Khi dữ liệu không có sẵn hoặc không được xác định tại thời điểm dữ liệu đầu vào.
- Khi dữ liệu không được áp dụng, bạn có thể thực hiện truy cập. Ví dụ: trong một cuộc khảo sát, một câu hỏi yêu cầu người tham gia đánh dấu vào ô xem họ có con hay không thể có một số giá trị NULL.
3. Điều kiện SQL IS NULL là gì?
Lệnh SQL IS NULL là một trong những lệnh SQL mà mọi thành viên cài đặt đều biết. Nó được sử dụng để kiểm tra NULL giá trị và hữu ích nhất khi tìm kiếm NULL giá trị. Lệnh này sẽ trả về tất cả các hàng NULL trong cột được chỉ định trong truy vấn của bạn.
SELECT FirstName, LastName, PhoneNum
FROM Employee
WHERE PhoneNum IS NULL;
Truy vấn này sẽ trả về tất cả các giá trị NULL trong cột PhoneNum .
4. Điều kiện SQL IS NOT NULL là gì?
Lệnh SQL IS NOT NULL ngược lại với lệnh SQL IS NULL.
Lệnh này kiểm tra các giá trị trống (KHÔNG phải giá trị NULL). Do đó, nó sẽ luôn trả về tất cả các hàng trong một cột có giá trị và loại trừ tất cả các giá trị NULL trong cột được chỉ định trong truy vấn của bạn.
SELECT FirstName, LastName, PhoneNum
FROM Employee
WHERE PhoneNum IS NOT NULL;
Truy vấn này sẽ trả về tất cả các giá trị NOT NULL trong cột PhoneNum .
5. Đếm các giá trị SQL NULL trong một cột?
Lệnh COUNT() được sử dụng để đếm. Đó là một lệnh hữu ích khi phân tích dữ liệu trong các bảng SQL của bạn và làm việc với các truy vấn SQL và bảng tạm thời.
Sử dụng truy vấn này để đếm số giá trị NULL trong cột PhoneNum .
SELECT COUNT(*) AS [Total Number of NULL]
FROM Employee
WHERE PhoneNum IS NULL
Điều này sẽ trả về:
6. Đếm các giá trị NOT NULL trong một cột
Sử dụng lệnh NOT NULL để đếm giá trị số không phải NULL trong cột PhoneNum .
SELECT COUNT(PhoneNum) AS [Total Number of Non-NULL Values]
FROM Employee
WHERE PhoneNum IS NOT NULL
Điều này sẽ quay trở lại:
Bạn cũng có thể sử dụng câu hỏi này để đưa ra kết quả trên một bảng.
SELECT SUM(CASE WHEN PhoneNum is null THEN 1 ELSE 0 END)
AS [Number Of Null Values],
COUNT(PhoneNum) AS [Number Of Non-Null Values]
FROM Employee
Trong truy vấn này, CASE và IS NULL lệnh đã được sử dụng để phân loại NULL của bạn trong cột PhoneNum là 1. Giá trị này đã được thêm và giữ trong các cột Number Of Null Values mới được tạo.
7. Đếm các giá trị NULL và tiếp tục phân tích dữ liệu của bạn
Sử dụng COUNT(), bạn có thể đếm các giá trị NULL và NOT NULL chỉ bằng một vài dòng SQL mã hóa. Sau khi biết các lệnh SQL của mình, bạn có thể áp dụng chúng cho nhiều trường hợp sử dụng khác nhau và phân tích dữ liệu của mình một cách dễ dàng.
Tìm hiểu ngay chương trình học công nghệ thông tin trực tuyến tại FUNiX tại đây:
Vân Nguyễn
Dịch từ: https://www.makeuseof.com/count-sql-null-not-null-in-column/
Bình luận (0
)