上面提到的问题是对的吗?如果是,答案是什么?
我想你的问题是如何连接两个表,并找到两边都没有等价项的行。
如果是,则可以执行外部联接。
如果您有两个表T1和T2,并且您想查找在表T1中没有对等项的行,那么下面的查询将连接这两个表,并只提供T1中但不在T2中的行。
SELECT * FROM T1 LEFT OUTER JOIN T2 ON T1.Key=T2.Key WHERE T2.Key IS NULL;
一个完整的外部联接可以给两边都没有匹配项的行。
SELECT * FROM T1 FULL OUTER JOIN T2 ON T1.Key=T2.Key WHERE T2.Key IS NULL OR T1.Key IS NULL;
如果你想要一个更好的答案,那么改进你的问题,在两个表上都给出示例行,并给出你想要的示例输出。
如果我理解正确,那就是反联接。在Oracle中(因为我不知道您标记的其他数据库(,它是通过使用NOT EXISTS
或NOT IN
来完成的(即没有类似from emp anti join dept
的东西(。