А есть универсалтные готовые примеры расчёта retention rate?
Раньше у яндекса на сайте с вакансиями было задание посчитать недельный retention, для БА такси
With first_time_key_event as (
Select
user_id,
min(time) first_time
From key_event_table
Group by user_id
)
Select
date_trunc('day', ftke.time) day,
date_diff('day', ftke.first_time, ket.time) returned_day,
count(distinct ket.user_id) users
From first_time_key_event ftke
Left join key_event_table ket on ket.user_id = ftke.user_id