Database
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Database

Làm thế nào để lọc các hàng không có NULL trong một cột

Vấn đề:

Bạn muốn tìm các bản ghi không có NULL trong một cột.

Ví dụ:

Cơ sở dữ liệu của chúng tôi có một bảng tên là product với dữ liệu trong ba cột:id , nameprice .

id tên giá
1 NULL
2 sữa 2,35
3 bánh mì 3,25
4 pho mát NULL

Hãy tìm tên và giá của các sản phẩm có giá (không có NULL). Thực hiện việc này bằng cách sử dụng toán tử IS NOT NULL.

Giải pháp:

SELECT name, 
  price
FROM product
WHERE price IS NOT NULL;

Đây là kết quả của truy vấn:

name giá
sữa 2,35
bánh mì 3,25

Điều này chỉ trả về các bản ghi không có NULL trong cột, vì vậy chỉ có tên và giá của sữa và bánh mì. Bơ và pho mát không có giá (cột price là NULL) nên bạn không nhìn thấy chúng.

Thảo luận:

Để hiển thị các bản ghi không có NULL trong một cột, hãy sử dụng toán tử IS NOT NULL. Bạn chỉ cần tên của cột (hoặc một biểu thức) và toán tử KHÔNG ĐẦY ĐỦ (trong ví dụ của chúng tôi, price IS NOT NULL ). Đặt điều kiện này trong mệnh đề WHERE (trong ví dụ của chúng tôi, WHERE price IS NOT NULL ), lọc các hàng.

Nếu điều kiện là đúng, nó biểu thị cột không lưu trữ NULL. Hàng được trả về nếu nó có giá trị trong cột này (cột không phải là NULL). Từ trên, truy vấn chỉ trả về hai sản phẩm, sữa và bánh mì, vì chúng có giá trị trong price .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sử dụng ODBC với Salesforce và Azure Active Directory (AD) Đăng nhập một lần (SSO)

  2. Hợp nhất các tệp dữ liệu với Statistica, Phần 1

  3. Làm cách nào để thêm cột trong bảng trong SQL?

  4. Cách xuất dữ liệu sang tệp phẳng với BCP Utility và nhập dữ liệu với chèn hàng loạt

  5. Nhóm dữ liệu bằng cách sử dụng hàm OVER và PARTITION BY