【发布时间】:2012-09-11 19:45:17
【问题描述】:
我在 MS Access 上有以下查询(简化):
SELECT * FROM table1 WHERE table1.ID NOT IN (SELECT DISTINCT table1id FROM table2);
我的问题是它不起作用,但是这两个起作用:
SELECT * FROM table1 WHERE table1.ID IN (SELECT DISTINCT table1id FROM table2);
SELECT * FROM table1 WHERE table1.ID NOT IN (2, 3);
第一个只是简单地返回一个空集,而我知道我在table1 上有记录,ID 范围从 1 到 9,表 2 上只使用了 2 和 3。
有什么帮助吗?
【问题讨论】:
-
“成功”和“失败”是什么意思?也许显示一些数据来解释。
-
它是如何失败或不起作用的?
-
你说的不起作用是什么意思?请提供示例数据和所需的输出。
-
编辑了问题以澄清问题。 @Gordon Linoff 的解决方案效果很好。