私は新しいto psql
で、1日あたりのユニークユーザーの数を数えることに興味があります。
私のテーブルには、_user_id
_(1人のユーザーが1日に複数回使用できる)と、使用時間を示すタイムスタンプである_start_time
_の2つの列しかありません。カウントには、min(start_time)がその日に落ちたユーザーのみを含める必要があります。
次のクエリが機能しないのはなぜですか? 2つの変数で別個の変数を一度に選択することはできませんか?
_SELECT COUNT (DISTINCT min(start_time::date), user_id),
start_time::date as date
FROM mytable
GROUP BY date
_
作り出す
エラー:関数
count(date, integer)
は存在しません
出力は次のようになります
_ date count
1 2017-11-22 56
2 2017-11-23 73
3 2017-11-24 13
4 2017-11-25 91
5 2017-11-26 107
6 2017-11-27 33...
_
個別のmin Dateとuser_idを数え、psqlで日付ごとにグループ化する方法についての提案があれば、高く評価されます。
フォームがオフになっているため、必要なのは
SELECT count(DISTINCT x)
FROM generate_series(1,10) AS gs(x);
または、あなたの場合、
SELECT start_time::date, count(DISTINCT user_id)
FROM mytable
GROUP BY start_time::date;