12

我有两个简单的表:(这里只有“id”列)

表格1:

id
1
2
3
4

表2:

id
2
4

sql 查询应该比较两个表是否缺少 table2 中的“id”并返回:1,3

有任何想法吗?:) 泰

4

3 回答 3

39

有几种方法可以给这只猫剥皮:

SELECT    table1.ID
FROM      table1
WHERE     table1.ID NOT IN(SELECT table2.ID FROM table2)

或者您可以使用左外连接:

SELECT          table1.ID
FROM            table1
LEFT OUTER JOIN table2 ON table1.ID = table2.ID
WHERE           table2.ID IS NULL
于 2011-11-03T16:00:20.893 回答
2
select t1.*
from table1 t1
left outer join table2 t2 on t1.id = t2.id
where t2.id is null
于 2011-11-03T16:00:30.713 回答
1

试试这个:

SELECT    table1.id
FROM      table1
WHERE     table1.id NOT IN(SELECT table2.id FROM table2)
于 2011-11-03T16:01:49.693 回答