Я пытаюсь подсчитать, сколько разных пользователей используют приложение за 28-дневное время.
Например, если я стою на feb-28, я хочу знать, сколько разных пользователей вошли в приложение.
Хитрость в том, что я хочу считать их только один раз Следовательно, если пользователь «22» вошел в систему 28 раз, я хочу, чтобы он считал только один.
Кроме того, пользователь может появляться только один раз за дату.
select b.date, count(DISTINCT a.id)
from table a,
(SELECT distinct(date), date_sub(date,27) dt_start
from table) b
where a.date >= b.dt_start and a.date <= b.fecha
group by b.date
Но это не работает
Пример того, что я хочу, с 2-дневным скользящим окном:
Input
Day Id
1 A
1 B
2 C
2 A
3 B
3 D
4 D
Result:
Day Count(distinct Id)
1 2
2 3
3 4
4 2
Спасибо! :)