访问查询以检索所有三个不相等的字段
Posted
技术标签:
【中文标题】访问查询以检索所有三个不相等的字段【英文标题】:Access query to retrieve all three fields not equal 【发布时间】:2014-04-09 17:48:20 【问题描述】:我需要在 MS Access 中编写一个查询,其中所有三列不应该相等。
例如,有三列 A B C 。每列不应该彼此相等,都应该有一个单独的值。
如何编写这样的查询?
【问题讨论】:
【参考方案1】:SELECT a, b, c
FROM my_table
WHERE a<>b AND a<>c AND b<>c
【讨论】:
当我做这个查询时我得到 C=Awhere
子句明确声明 a<>c
。 a
或 c
中有 null
s 吗?另外,这些列是字符串吗?是否有可能包含空格以使它们实际上不相等,但可能看起来与肉眼相等?【参考方案2】:
如果您的字段不可为空,您只需检查 A != B、A != C 和 B != C:
SELECT *
FROM test
WHERE A <> B AND A <> C AND B <> C
如果字段可以为空,则可以进行相同的查询,但 NULL
s 不被视为有效值。
【讨论】:
当我做这个查询时得到 C=A 这是不可能的——查询明确要求它们不相等。如果 C 和 A 是字符串,当它们仅在其中一个字符串中尾随空格不同时,它们可能看起来相等。以上是关于访问查询以检索所有三个不相等的字段的主要内容,如果未能解决你的问题,请参考以下文章