微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Access 2007 SQL中按聚合功能对分组中的差异进行计数

如何解决在Access 2007 SQL中按聚合功能对分组中的差异进行计数

我不是MS Access方面的专家,上次我为它编写任何内容都花了很长时间,但这也许行得通:

SELECT cd.DiagCode, Count(cd.CustomerID)
FROM (select distinct DiagCode, CustomerID from CustomerTable) as cd 
Group By cd.DiagCode;

解决方法

您好,我浏览了一段时间的论坛,并在这里问我的第一个问题。我有点束手无策,想知道是否能得到一些帮助。我正在使用Access2007,但尚未在网上找到一个很好的答案。

我的数据是诊断代码和客户ID,而我正在寻找的原因就是为什么要为每个诊断代码找到不同的客户ID计数。理想情况下,在非AccessSQL中,它看起来应该像这样:

SELECT DiagCode,Count(Distinct(CustomerID))
FROM CustomerTable
Group By DiagCode;

我知道这是一个非常简单的问题,但是我发现的答案太复杂(多个聚合函数)或太简单了。这是我为解决此问题而采取的一种方法,但是返回的结果太多:

SELECT DiagCode,Count(CustomerID)
FROM CustomerTable
WHERE CustomerID in (SELECT Distinct CustomerID from CustomerTable)
Group By DiagCode;

希望我在这里很清楚,就像我说的第一篇文章一样,感谢您的帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。