我使用MS Access SQL比较两个数据集,这似乎是StackOverflow上的常见问题。
我发现了一个类似的问题,我认为这是一个有效的答案,但有一部分答案我不明白。
链接: How do I get all the rows in one table that are not in another in MS Access?
接受且最受欢迎的答案:
SELECT TableB.con_number
FROM TableB
WHERE NOT EXISTS (SELECT 1
FROM TableA
WHERE TableA.con_number = TableB.con_number);
我不理解1
声明中的SELECT 1
。为什么会有1
?
答案 0 :(得分:2)
1
可能是任何东西。如果你愿意,你可以把“屁”放在那里。该子查询必须返回一些内容,以便“NOT EXISTS”查看TableA.con_number = TableB.con_number
话虽如此,似乎更好的查询可能是:
SELECT TableB.con_number
FROM tableB
LEFT JOIN TableA on
TableB.con_number=TableA.con_number
WHERE tableA.Con_Number IS NULL
GROUP BY TableB.Con_number
除非我对这些表格有一些细微差别。