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

Làm cách nào để tìm cột nào không có bất kỳ dữ liệu nào (tất cả các giá trị đều là NULL)?

Đối với một cột, count(ColumnName) trả về số hàng trong đó ColumName không rỗng:

select  count(TheColumn)
from    YourTable

Bạn có thể tạo một truy vấn cho tất cả các cột. Theo đề xuất của Martin, bạn có thể loại trừ các cột không được rỗng bằng is_nullable = 1 . Ví dụ:

select  'count(' + name + ') as ' + name + ', '
from    sys.columns
where   object_id = object_id('YourTable')
        and is_nullable = 1

Nếu số lượng bảng lớn, bạn có thể tạo truy vấn cho tất cả các bảng theo cách tương tự. Danh sách tất cả các bảng có trong sys.tables .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để bạn chỉ định một số cổng khác trong SQL Management Studio?

  2. Lỗi kết nối SQL Server 2008 Không có quy trình nào ở đầu kia của đường ống

  3. Ước tính tham gia máy chủ SQL sử dụng Căn chỉnh thô biểu đồ

  4. Loại biến không mong muốn được trả về bởi Nhận-Công việc

  5. Làm cách nào để so sánh 2 hàng từ cùng một bảng (SQL Server)?