最佳答案
在我看来,您可以在 SQL 查询中使用 NOT EXISTS、 NOT IN 或 LEFT JOIN WHERE IS NULL 来做同样的事情。例如:
SELECT a FROM table1 WHERE a NOT IN (SELECT a FROM table2)
SELECT a FROM table1 WHERE NOT EXISTS (SELECT * FROM table2 WHERE table1.a = table2.a)
SELECT a FROM table1 LEFT JOIN table2 ON table1.a = table2.a WHERE table1.a IS NULL
我不确定我是否掌握了所有的语法,但这些是我见过的通用技术。我为什么要选择一个而不是另一个?表演有什么不同吗?哪一个是最快/效率最高的?(如果它取决于实现,那么我什么时候使用每一个?)