[FAQ000141]2つのテーブルを比較し、一致しないデータを検索するには?¶
Q¶
2つのテーブルを比較し、片方のテーブルにしか存在しないデータを取得する方法は
ありますか?
例えば、テーブルAには存在するが、テーブルBには存在ないデータを取得したいです。
A¶
拡張オプションのCELF SQLアクション(※)を用いて、
NOT EXISTS句を用いたSQLを実行することで、
一方にしか存在しないデータを取得する方法があります。
■SQL例
SELECT
[カラムA]
FROM
[テーブルA]
WHERE
NOT EXISTS (
SELECT
[カラムB]
FROM
[テーブルB]
WHERE
[サンプルA].[カラムA] = [サンプルB].[カラムB]
)
■実行結果
[テーブルA]の[カラムA]に存在し、
[テーブルB]の[カラムB]に存在しないレコードが抽出されます。
(※)CELF SQLアクションの詳細については下記をご参照ください