我有2个表,这两个表的前两列是相同的,例如: Table_1具有SSN列和membershipId列 Table_2还具有SSN和membershipId列。它们的数据类型相同但内容可能略有不同。 Table_1可能具有表2中尚未包含的SSN和membershipId组合。
我需要从table_1中选择SSN和membershipId的组合尚未存在于table_2中的记录。如何写这个select语句?我正在使用Oracle 11g
所以如果table_1有SSN = 111-123-2345和membershipId = 00001234的记录 该记录不能存在于表-2中。
答案 0 :(得分:3)
另一种可能性是:
select *
from Table_1 t1
where not exists
(
select null
from Table_2 t2
where t2.SSN = t1.SSN
and t2.membershipId = t1.membershipId
)
在Oracle中,您也可以直接使用“NOT IN”......
答案 1 :(得分:1)
你可以使用MINUS
SELECT SSN, membershipids
FROM table_1
MINUS
SELECT SSN, membershipids
FROM table_2