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

Làm thế nào để kiểm tra chuỗi không rỗng và không rỗng trong máy chủ SQL?

Nếu bạn chỉ muốn so khớp "" dưới dạng một chuỗi trống

WHERE DATALENGTH(COLUMN) > 0 

Nếu bạn muốn đếm bất kỳ chuỗi nào bao gồm toàn bộ khoảng trắng là trống

WHERE COLUMN <> '' 

Cả hai điều này sẽ không trả về NULL các giá trị khi được sử dụng trong WHERE mệnh đề. Dưới dạng NULL sẽ đánh giá là UNKNOWN cho những điều này thay vì TRUE .

CREATE TABLE T 
  ( 
     C VARCHAR(10) 
  ); 

INSERT INTO T 
VALUES      ('A'), 
            (''),
            ('    '), 
            (NULL); 

SELECT * 
FROM   T 
WHERE  C <> ''

Chỉ trả về một hàng duy nhất A . I E. Các hàng có NULL hoặc một chuỗi trống hoặc một chuỗi bao gồm toàn bộ khoảng trắng đều bị loại trừ bởi truy vấn này.

SQL Fiddle



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Định dạng tiền tệ SQL Server 2005 với dấu phẩy và dấu chấm

  2. Tổng hợp dữ liệu trong T-SQL

  3. SQL Server 2016:Tạo mối quan hệ

  4. Các trường hợp sử dụng để chọn CHAR qua VARCHAR trong SQL là gì?

  5. SSIS xuất dữ liệu sang tệp phẳng hiển thị dấu ngoặc kép dưới dạng ký tự thập lục phân