Таблица:
create table video_call (
timestamp timestamp,
callerid int,
receiverid int,
call_length int);
insert into video_call values
('2018-12-12 01:01:01', 1, 2, 3),
('2019-01-01 01:01:01', 1, 3, 5),
('2019-01-01 01:01:01', 2, 4, 3),
('2019-01-01 01:01:01', 5, 6, 3),
('2019-01-02 01:01:01', 3, 4, 3),
('2019-01-02 01:01:01', 1, 4, 3),
('2019-01-03 01:01:01', 3, 5, 3),
('2019-01-03 01:01:01', 2, 5, 3),
('2019-01-04 01:01:01', 3, 7, 3);
найти новых пользователей на 2019-01-01
и затем получать коэффициент удержания этих новых пользователей за каждый день, начиная с 2019-01-0
до 2019-01-04
.
Ожидаемый результат будет
day | retention
2019-01-02 | 0.5
2019-01-03 | 0.5
2019-01-04 | 0.25
Объяснение:
- в день
2019-01-01
, всего 4 новых пользователя 3, 4, 5, 6
. - на
2019-01-02
, есть 2 пользователя (3 и 4) из 4 новых пользователей, которые совершают видеозвонки. - на
2019-01-03
, есть 2 пользователя (3 и 5) из 4 новых пользователей, совершающих видеозвонки. - на
2019-01-04
, есть 1 пользователь (3) из 4 новые пользователи совершают видеозвонки.
Я пытался, но не мог найти способ сделать это. Ценю любую идею и вклад. Спасибо