Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Nilai NULL di dalam klausa NOT IN

Kueri A sama dengan:

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

Karena 3 = 3 benar, Anda mendapatkan hasil.

Kueri B sama dengan:

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

Ketika ansi_nulls aktif, 3 <> null adalah UNKNOWN, jadi predikatnya dievaluasi menjadi UNKNOWN, dan Anda tidak mendapatkan baris apa pun.

Ketika ansi_nulls tidak aktif, 3 <> null benar, sehingga predikatnya bernilai benar, dan Anda mendapatkan baris.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kesalahan SQL:Sintaks salah di dekat kata kunci 'Pengguna'

  2. Cara Menginstal SQL Server di M1 Mac (ARM64)

  3. Perbedaan antara datetime dan timestamp di sqlserver?

  4. 4 Cara Mendapatkan Riwayat Pekerjaan SQL Server

  5. Cara Melihat Paket Eksekusi Kueri di Azure Data Studio (SQL Server)