我有两张桌子。主表包含一个id列表,另一个包含重复的id列表,需要从主表中删除。至少据我所知,Distinct约束并不是真的有用,而且我不确定获得所需结果的最佳方法是什么。任何和所有的帮助是值得赞赏的(sql查询不是我的强项,我已经搜索了一下,试图弄清楚这一点)
答案 0 :(得分:2)
您似乎希望在一个表中列出记录,其中值不会存在于另一个表中。
你可以采取各种方式。
使用NOT IN
和子查询:
SELECT * FROM table1
WHERE id NOT IN (SELECT id FROM table2)
使用反连接:
SELECT t1.* FROM table1 t1
LEFT JOIN table2 t2
ON t1.id = t2.id
WHERE t2.id IS NULL