SQL

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

发布于 2021-03-27 16:47:40

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

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

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;

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

关注者
0
被浏览
169
1 个回答
  • 面试哥
    面试哥 2021-03-27
    为面试而生,有面试问题,就找面试哥。

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

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


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看