テーブルから一意の値を取得しようとしています。テーブルには次のものがタイムログファイルとして保持されています。
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に個別を追加し、それでも常に一緒にカウントするにはどうすればよいですか
count(*)
は、(グループ内の)行の総数をカウントします。代わりに、distinct user
:
SELECT Time, COUNT(DISTINCT user) as total, Code
FROM dbo.AnalyticsPause
WHERE code = 'xxxx'
GROUP BY Time, Code