gpt4 book ai didi

sql - 如何在 MS Access 中正确使用 "Not Equal"?

转载 作者:行者123 更新时间:2023-12-04 03:05:59 25 4
gpt4 key购买 nike

目标:

此查询的目的是选择一列中的所有不同值,这些值不存在于不同表的相似列中。

当前查询:

SELECT DISTINCT Table1.Column1
FROM Table2, Table1
WHERE Table1.Column1 <> Table2.Column1

查询结果:

当我尝试运行此查询时会发生什么情况是进度条几乎立即填满但随后它几乎卡住并且就我所见没有做任何其他事情。当我使用 = 符号而不是 <> 时,它输出的值正好相等,如果我用实际的实际值替换 Table2.Column1,它就可以正常工作。

我只是在输入这个问题时再次运行它,上面的查询这次给了我一个答案,但它具有该列的所有 DISTINCT 值,而不是该表所特有的所有值。

关于我在这里做错或遗漏的任何想法?

最佳答案

像这样

SELECT DISTINCT Table1.Column1
FROM Table1
WHERE NOT EXISTS( SELECT * FROM Table2
WHERE Table1.Column1 = Table2.Column1 )

你想要不存在,而不是“不相等”

顺便说一句,你很少想像这样写一个 FROM 子句:
FROM Table1, Table2

因为这意味着“从表 1 中每一行的所有组合与表 2 中的每一行......”通常这比您想看到的结果行多得多。在极少数情况下,您确实想这样做,更容易接受的语法是:
FROM Table1 CROSS JOIN Table2

关于sql - 如何在 MS Access 中正确使用 "Not Equal"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2210797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com