LTV по cohort за первый год

Сложная ltv

Условие задачи

Таблица `payments(user_id, paid_at, amount)`. Посчитай среднюю выручку с пользователя (LTV) за первый год после первой оплаты, в разрезе cohort = месяц первой покупки. Колонки: `cohort_month`, `cohort_size`, `ltv_first_year`. Округли LTV до 2 знаков. Сортировка по `cohort_month`.

Схема данных

CREATE TABLE payments (user_id INTEGER, paid_at TEXT, amount REAL);

Темы

cohort ltv date-arithmetic cte

Подсказки

Что проверяет эта задача

Задача «LTV по cohort за первый год» учит решать задачи по теме «ltv» так, как это спрашивают на собеседовании аналитика данных. Такие задачи регулярно дают на собеседованиях аналитиков данных. Уровень сложный — задача проверяет глубину и умение собрать запрос из нескольких приёмов.

Как подступиться к решению

Сначала разберись со схемой данных и пойми, какой результат нужен на выходе. Определи, какие таблицы и поля задействованы, и собирай запрос пошагово: фильтрация → соединение или группировка → итоговый отбор и сортировка. Проверь результат на крайних случаях — NULL, дубликаты, пустые группы. Свой запрос сразу прогоняешь автопроверкой в интерактивной SQL-песочнице на реальной базе (SQLite и PostgreSQL 16 прямо в браузере).

Хочешь разобрать SQL системно с нуля — пройди бесплатный курс «SQL с нуля» и закрепи навык в тренажёре.

Решить в интерактивной SQL-песочнице → ← Все SQL-задачи