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.