gpt4 book ai didi

sql - MS ACCESS 计数/总行数,无重复

转载 作者:行者123 更新时间:2023-12-02 07:40:56 25 4
gpt4 key购买 nike

我有下表,我需要在不包括任何重复记录的情况下计算总行数。

CustomerID
test1
test1
test2
test3
test4
test4

如您所见,总行数为 6,但有两个 test1 和两个 test4,我希望查询返回 4。IOW,我想计算 CustomerID 中的唯一值.

我已经尝试过子查询,但没有让它为我工作。

-- 2012 年 6 月 27 日更新 --

谢谢,两者都对我有用:

  1. SELECT COUNT(*) FROM ( SELECT CustomerID FROM TheTable GROUP BY CustomerID ) as
  2. SELECT COUNT(*) FROM ( SELECT DISTINCT CustomerID FROM TheTable ) AS sub;

我现在需要一个查询来仅保留今天添加的那些 CustomerID,然后对它们进行计数。

例如,

CustomerID DateAdded
test1 25/06/2012
test1 25/06/2012
test2 26/06/2012
test3 27/06/2012 - Today
test4 27/06/2012 - Today
test4 27/06/2012 - Today

然后它需要返回 3。

我已经尝试将以下查询添加到提供的两个解决方案中,但无法使它们中的任何一个工作/返回我想要的值。

HAVING (([TheTable].DateAdded)=Date());

最佳答案

这适用于 SQL,我认为它也适用于 Access:

SELECT COUNT(DISTINCT CustomerID) FROM TheTable 

编辑:根据 Jeff 在评论中的说法,Access 不支持上述语法。

这应该可以肯定地工作:

SELECT COUNT(*) FROM ( SELECT CustomerID FROM TheTable GROUP BY CustomerID ) a

按日期限制

SELECT COUNT(*) FROM ( 
SELECT TheTable.CustomerID FROM TheTable GROUP BY CustomerID
WHERE TheTable.DateAdded >= Date()
) a

关于sql - MS ACCESS 计数/总行数,无重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11201351/

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