Таблицы users (id, registered_at TEXT) и payments (id, user_id, amount REAL, paid_at TEXT). Посчитайте ARPU (Average Revenue Per User) по месяцам: общая выручка за месяц делённая на всех зарегистрированных пользователей (не только платящих). Выведите month, total_revenue, total_users, arpu. Округлите arpu до 2 знаков.
CREATE TABLE users (id INTEGER PRIMARY KEY, registered_at TEXT);
CREATE TABLE payments (id INTEGER PRIMARY KEY, user_id INTEGER, amount REAL, paid_at TEXT);
STRFTIME SUM COUNT SUBQUERY ARPU
Задача «ARPU по месяцам» учит решать задачи по теме «Анализ выручки» так, как это спрашивают на собеседовании аналитика данных. Такие задачи регулярно дают на собеседованиях аналитиков данных. Уровень лёгкий — это база, которую должен уверенно держать каждый аналитик.
Сначала разберись со схемой данных и пойми, какой результат нужен на выходе. Определи, какие таблицы и поля задействованы, и собирай запрос пошагово: фильтрация → соединение или группировка → итоговый отбор и сортировка. Проверь результат на крайних случаях — NULL, дубликаты, пустые группы. Свой запрос сразу прогоняешь автопроверкой в интерактивной SQL-песочнице на реальной базе (SQLite и PostgreSQL 16 прямо в браузере).
Разбор темы с примерами — в гайде «Анализ выручки в SQL». Хочешь системно с нуля — пройди бесплатный курс «SQL с нуля».
Решить в интерактивной SQL-песочнице → ← Все SQL-задачи