Access/SQL - 绕过 COUNT(不同)

Posted

技术标签:

【中文标题】Access/SQL - 绕过 COUNT(不同)【英文标题】:Access/SQL - Getting around COUNT(Distinct) 【发布时间】:2014-11-03 23:57:19 【问题描述】:

我有一张姓名和地址表(名字、姓氏、地址)。我想选择每个地址的人有多个姓氏的行。例如,如果 John Smith 和 Jane Brown 住在同一个地址。 Access 无法执行 SELECT(DISTINCT(LastName)) 所以我不知道如何解决这个问题。

以下为我提供了多人的地址,但我不知道从哪里开始。

SELECT FirstName, LastName, Address
FROM List
WHERE (Address) IN 
(SELECT Address FROM List GROUP BY (Address) HAVING COUNT(Address) > 1); 

感谢您的帮助!

【问题讨论】:

【参考方案1】:

相反,比较min()max()

SELECT FirstName, LastName, Address
FROM List
WHERE Address IN (SELECT Address FROM List 
                  GROUP BY Address HAVING MIN(LastName) <> MAX(LastName));

【讨论】:

我认为最后一行缺少 HAVING。

以上是关于Access/SQL - 绕过 COUNT(不同)的主要内容,如果未能解决你的问题,请参考以下文章

SELECT Count Distinct Syntax MS Access SQL [重复]

MS ACCESS SQL QUERY COUNT DISTINCT

Access SQL select count number of specific field from a table join another table

Access SQL 中的 CDec 的行为与从 Access VBA 中使用时的行为不同

计算查询中的百分比 - Access SQL

MS Access Sql 查询不是聚合函数的一部分。使用计数功能