TSQL 计数不同

TSQL count distinct

我正在尝试从 table 中获取唯一值,table 将以下内容作为时间日志文件保存:

id | time | code | user
1  | 7000 | xxxx | 1 
2  | 7000 | xxxx | 1
3  | 7500 | xxxx | 2
4  | 7000 | xxxx | 3

我想知道当时有多少唯一身份用户使用过该代码,例如7000,它应该说 2 但我写的 distinct 我得到 3

SELECT Time, COUNT(*) as total, Code
FROM dbo.AnalyticsPause
WHERE CODE = 'xxxx'
GROUP BY  id, Time, Code

结果:

time | Count | code 
7000 | 3     | xxxx
7500 | 1     | xxxx

我想去哪里

time | Count | code 
7000 | 2     | xxxx
7500 | 1     | xxxx

我怎样才能在 id_user 上添加一个不同的并且仍然一直在一起计数

count(*) 计算总行数(在组中)。您应该只计算 distinct user:

SELECT   Time, COUNT(DISTINCT user) as total, Code
FROM     dbo.AnalyticsPause
WHERE    code = 'xxxx'
GROUP BY Time, Code