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

Giá trị NULL bên trong mệnh đề NOT IN

Truy vấn A giống như:

select 'true' where 3 = 1 or 3 = 2 or 3 = 3 or 3 = null

Kể từ 3 = 3 là đúng, bạn sẽ nhận được một kết quả.

Truy vấn B giống như:

select 'true' where 3 <> 1 and 3 <> 2 and 3 <> null

Khi ansi_nulls đang bật, 3 <> null là UNKNOWN, vì vậy vị từ đánh giá là UNKNOWN và bạn không nhận được bất kỳ hàng nào.

Khi ansi_nulls tắt, 3 <> null là true, vì vậy vị từ đánh giá là true và bạn nhận được một hàng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cú pháp không chính xác gần ''

  2. freeTDS không sử dụng cấu hình của nó

  3. 5 tính năng hàng đầu mà Nền tảng giám sát hiệu suất cơ sở dữ liệu SQL Server của bạn cần cung cấp

  4. Thứ tự của các cột trong mệnh đề WHERE có quan trọng không?

  5. SQL động so với thủ tục được lưu trữ