Главная → Практика → SQL Тренажёр → Retention-анализ
Retention в SQL: когортный анализ удержания
37 задач
Лёгкие, средние, сложные
С эталонными решениями
Решение в браузере
Retention — ключевая метрика любого продукта. На product-собесе ОБЯЗАТЕЛЬНО спросят: посчитай N-day retention, построй когортную таблицу. Через окна, JOIN или CTE — нужно уметь несколькими способами. 20 задач на retention от простых до rolling retention с скользящими окнами.
Начать решать задачи →
Все задачи на «Retention-анализ» (37)
Количество новых пользователей по месяцам Лёгкая STRFTIME GROUP BY COUNT
Retention Day 1 по когортам Средняя JULIANDAY LEFT JOIN CASE WHEN COUNT DISTINCT
Retention D1, D7, D30 для когорты Сложная JULIANDAY CASE WHEN COUNT DISTINCT LEFT JOIN
Когортная таблица по неделям Средняя STRFTIME JULIANDAY CASE WHEN COHORT
Кумулятивный retention: доля вернувшихся хотя бы раз за N дней Сложная CTE VALUES CROSS JOIN JULIANDAY
Базовое удержание Day-1 Лёгкая LEFT JOIN DATE COUNT DISTINCT
Помесячное удержание по когортам Средняя CTE CROSS JOIN LEFT JOIN STRFTIME
Скользящий retention за 7 дней Средняя CTE JOIN DATE COUNT
Треугольная матрица удержания Сложная CTE LEFT JOIN CASE WHEN COUNT
Retention с сегментацией по активности Сложная CTE LEFT JOIN CASE WHEN DATE
Простой Day-1 retention Лёгкая RETENTION LEFT JOIN DATE CASE
Retention по когортам (Day 1, 7, 30) Средняя RETENTION COHORT CTE DATE
N-day retention curve для одной когорты Средняя RETENTION RECURSIVE CTE DATE LEFT JOIN
Rolling retention (удержание за любой день в окне) Сложная RETENTION ROLLING COHORT DATE
Resurrection: пользователи вернувшиеся после 30+ дней неактивности Сложная RETENTION RESURRECTION LAG WINDOW
Еженедельный retention по когортам (матрица) Сложная RETENTION COHORT MATRIX DATE
Месячный retention с классификацией: new, retained, resurrected, churned Сложная RETENTION CLASSIFICATION CTE NOT IN
Простой retention по дню недели Лёгкая RETENTION STRFTIME DATE CASE
Retention с учётом подписочного плана Средняя RETENTION GROUP BY CASE DATE
Retention funnel: Day-1, Day-3, Day-7, Day-14, Day-30 Средняя RETENTION FUNNEL CTE VALUES
Day-7 Retention по когортам регистрации Сложная LEFT JOIN COUNT DISTINCT CASE WHEN DATE
D1 retention одной когорты Лёгкая CTE COUNT IN NOT IN
Возвращаемость по неделям Лёгкая strftime CAST JOIN COUNT
Cohort retention D1/D7/D30 Средняя CTE COUNT DISTINCT IN
Retention по платформам Средняя CTE LEFT JOIN COUNT DISTINCT
Месячный churn Средняя CTE LEFT JOIN COUNT CASE WHEN
Net Revenue Retention (NRR) Средняя CTE LEFT JOIN SUM COALESCE
Rolling 30-day retention Сложная CTE COUNT DISTINCT subquery
Ozon: месячный retention по когортам регистрации Сложная retention cohort CASE WHEN JULIANDAY
Yandex: WAU vs DAU — отношение активности Средняя CTE subquery COUNT DISTINCT JULIANDAY
Avito: % покупателей, вернувшихся в течение 14 дней Средняя CTE self-join JULIANDAY COUNT
WB: D7 retention по неделям регистрации Сложная retention cohort weekly JULIANDAY
Yandex Music: rolling retention 30 дней Средняя retention rolling CTE subquery
Сбер: NN-day retention pivot Сложная retention cohort pivot ABS
Cohort retention: D7 по неделям Сложная cohort retention date-arithmetic cte
Retention triangle (D1/D7/D30) Сложная cohort retention conditional-aggregation
Retention по каналу привлечения Средняя retention cohort conditional-aggregation
FAQ: частые вопросы про retention-анализ
Что такое N-day retention?
Доля пользователей, вернувшихся через N дней после первого визита. Day-1 retention = % юзеров, которые зашли и на следующий день. Day-7, Day-30 — стандартные метрики продукта.
Чем classic retention отличается от rolling?
Classic: вернулся ИМЕННО на N-й день. Rolling: был активен в любой день с N-го по конец периода. Rolling обычно выше и стабильнее.
Связанные темы SQL
Агрегации · JOIN-запросы · Оконные функции · CTE (Common Table Expressions) · Подзапросы · Работа с датами · Строковые функции · Условная логика
Открыть весь SQL-тренажёр (521 задач) →