SQL select 条来自 table A 但不在 table B 中的记录

SQL select of records from table A but not in table B

拜托,谁能帮我找到 SQL 声明 select TABLE_A 中的所有记录,但 FIELD_1、FIELD_2 的组合在 TABLE_B 中不存在的记录除外。

(在 DB2 中)

您可以简单地使用 NOT EXISTS:

select * from table_a ta
where not exists (select * from table_b tb
                  where tb.field_1 = ta.field_1
                    and tb.field_2 = ta.field_2)

使用不存在:

select * from table_A where not exists (select * from table_B 
                  where table_B.field_1 = table_A.field_1
                    and  table_B.field_2 = ta.field_2)

您可以使用反加入。例如:

select *
from table_a a
left join table_b b on b.field_1 = a.field_1 and b.field_2 = a.field_2
where b.field_1 is null