クエリAは次と同じです:
select 'true' where 3 = 1 or 3 = 2 or 3 = 3 or 3 = null
3 = 3
なので 本当です、あなたは結果を得る。
クエリBは次と同じです:
select 'true' where 3 <> 1 and 3 <> 2 and 3 <> null
ansi_nulls
の場合 オン、3 <> null
はUNKNOWNであるため、述語はUNKNOWNと評価され、行は取得されません。
ansi_nulls
の場合 オフ、3 <> null
がtrueであるため、述語はtrueと評価され、行が取得されます。