テーブル A には存在するが、テーブル B には存在しない項目を見つける必要があります。これは、MySQL でこのような結合を行うことで非常に簡単になります。
select * from A
left join B on A.key=B.key
where B.key is null
ただし、何らかの理由で、これは MSSQL では機能しません。すべての結果を表示するために where 句を使用せずにクエリを作成しましたが、null 値ではなく一致のみが表示されます。なぜこれが機能しないのか分かりますか?
代わりに「存在しない場合」を使用できることは知っていますが、結合が機能しない理由を知りたいです。
レビュー用にコードを追加しています
select Absences.CustomerID, b.*
from (
select * from openquery(JUAN_INTERFACE,'select cmp_wwn from Planet_Customers where i_outcome =4')) b
left join Absences on Absences.CustomerID = b.cmp_wwn
where Absences.Type = 3223