用于查找缺失行的SQL查询

时间:2014-08-14 06:45:12

标签: sql

我有两张桌子A和B

A -> A_ID
     net_ID

B-> B_ID
    net_ID

这些表与net_ID

相关

我必须找到表B中缺少的所有net_ID,而不是A。

我有以下查询

select net_ID from A where net_ID not in (select net_ID from B);

这会有用吗?

2 个答案:

答案 0 :(得分:1)

最简单的方法是使用EXCEPT运算符:

SELECT net_ID FROM A
EXCEPT 
SELECT net_ID FROM B

来自MSDN:

  

EXCEPT返回左查询中没有的任何不同值   也在正确的查询中找到。

这正是你要找的......

答案 1 :(得分:1)

SELECT      A.*
FROM        A
LEFT JOIN   B On A.net_ID = B.net_ID
WHERE       B.net_ID is NULL