@HelloDarknessMyOldFried

Как посчитать кумулятивную сумму уникальных пользователей?

Допустим, у меня есть следующий фрейм:
day_no user_id
0 a
0 b
0 c
0 d
0 e
0 f
1 a
2 c
2 e
3 f
3 a
4 a

Мне нужно посчитать, начиная с day_no = 4, кумулятивную сумму уникальных юзеров, чтобы получилось так:
day_no sum_unique_users
4 1
3 2
2 4
1 4
0 6

Как это можно посчитать в postgresql?
  • Вопрос задан
  • 32 просмотра
Пригласить эксперта
Ответы на вопрос 1
@galaxy
Ну так примерно (если не смущает довольно избыточный self-join):
select t.day_no, count(distinct t2.user_id)
  from t
  join t as t2 on (t2.day_no >= t.day_no)
 group by 1
 order by 1 desc


sqlfiddle
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы