Количество TSQL различно - PullRequest
0 голосов
/ 30 июня 2018

Я пытаюсь получить уникальные значения из таблицы, таблица содержит следующее как файл журнала времени:

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

Я хотел бы знать, сколько уникальных пользователей использовали код за раз, например, 7000, это должно сказать 2, но с отчетливым я пишу, я получаю 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 и все равно считать все время вместе

1 Ответ

0 голосов
/ 30 июня 2018

count(*) подсчитывает общее количество строк (в группе). Вместо этого вы должны просто сосчитать distinct user:

SELECT   Time, COUNT(DISTINCT user) as total, Code
FROM     dbo.AnalyticsPause
WHERE    code = 'xxxx'
GROUP BY Time, Code
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...