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

Tại sao WHERE column =NULL không xuất hiện lỗi trong SQL Server?

Đó là bởi vì NULL không thể được đánh đồng với bất kỳ giá trị nào.

Tắt tùy chọn ANSI_NULLS và sau đó chạy nó, bạn sẽ thấy hàng ngay bây giờ:

SET ANSI_NULLS OFF
select * from #foo --returns the one record we just created  
select * from #foo where colA = null --does not throw an error and does not return a record! why?? 
select * from #foo where colA is null --returns the record  drop table #foo 


  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 để buộc khung thực thể chèn các cột nhận dạng?

  2. Các quy tắc không được dùng nữa, thay vào đó là gì (TSQL)?

  3. Giới thiệu về SQL Server 2017

  4. Tôi có nên sử dụng! =Hoặc <> cho T-SQL không?

  5. SQL Server 2016:Khôi phục cơ sở dữ liệu