Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cách chọn các giá trị cột không rỗng trong MySQL

Để chọn các hàng có giá trị cột không phải NULL, không phải chuỗi rỗng và không chỉ chứa khoảng trắng, hãy kết hợp IS NOT NULL với hàm TRIM().

Cú pháp

SELECT * 
FROM ten_bang 
WHERE ten_cot IS NOT NULL 
  AND TRIM(ten_cot) <> '';

Ví dụ minh họa

Tạo bảng và chèn dữ liệu mẫu:

CREATE TABLE SelectNonEmptyValues (
    Id INT NOT NULL AUTO_INCREMENT,
    Name VARCHAR(30),
    PRIMARY KEY (Id)
);

INSERT INTO SelectNonEmptyValues (Name) VALUES
('John Smith'), (NULL), (''), ('Carol Taylor'), ('DavidMiller'), (' ');

Dữ liệu trong bảng:

+----+-----------------------+
| Id | Name                  |
+----+-----------------------+
|  1 | John Smith            |
|  2 | NULL                  |
|  3 |                       |
|  4 | Carol Taylor          |
|  5 | DavidMiller           |
|  6 |                       |
+----+-----------------------+

Truy vấn lấy giá trị không rỗng

SELECT * 
FROM SelectNonEmptyValues 
WHERE Name IS NOT NULL 
  AND TRIM(Name) <> '';

Kết quả: Chỉ trả về 3 hàng có giá trị thực sự:

+----+--------------+
| Id | Name         |
+----+--------------+
|  1 | John Smith   |
|  4 | Carol Taylor |
|  5 | DavidMiller  |
+----+--------------+

Giải thích: Điều kiện IS NOT NULL loại bỏ NULL, TRIM() <> '' loại bỏ chuỗi rỗng và chuỗi chỉ chứa khoảng trắng.