ここで私の質問に対する最良の答えを見つけました: NOT IN 句と NULL 値
次の 2 つのクエリはどちらも結果を返しません。
select upc
from staging..posrecords
where upc not in (select upc from mrs..items)
select upc
from staging..posrecords
where upc in (select upc from mrs..items)
次のクエリはどちらも結果を返します。
select upc from staging..posrecords
select upc from mrs..items
後者の 2 つのクエリが両方とも結果を返すことを考えると、最初の 2 つのクエリのどちらも結果をまったく返さない可能性があることを理解できません。たぶん手遅れで、本当に明白な何かが欠けているだけかもしれませんが、私は今できる限り困惑しています.
さらに、次のクエリも結果を返します
select upc
from mrs..items
where upc not in (select upc from staging..posrecords)
その場合、上記の最初のクエリが結果を返さない理由について、さらに困惑しています。