我有两张桌子。两者都包含问题ID字段。我想从第一个表中获取第二个表中没有的所有记录。我不想使用“NOT IN”约束作为第二个包含超过400000条记录的表。
答案 0 :(得分:16)
尝试类似
的内容SELECt t1.*
FROM Table1 t1 LEFT JOIN
Table2 t2 ON t1.questionID = t2.questionID
WHERE t2.questionID IS NULL
答案 1 :(得分:4)
通常,您可以使用LEFT JOIN
结合WHERE
子句选择连接表不返回任何结果的每一行。
SELECT t1.*
FROM Table1 t1
LEFT OUTER JOIN Table2 t2 ON t2.ID = t1.ID
WHERE t2.ID IS NULL
答案 2 :(得分:2)
尝试:
select from t1
right join t2 on t2.id = t1.id where t2.id is null