D1 retention одной когорты

Лёгкая Retention-анализ

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

Таблица user_logins содержит id, user_id, login_date. Когорта — все юзеры, у которых первый логин был 2024-01-01. Посчитайте % юзеров когорты, которые залогинились ровно через 1 день (2024-01-02). Выведите d1_retention_pct (округлить до 1 знака).

Схема данных

CREATE TABLE user_logins (id INTEGER PRIMARY KEY, user_id INTEGER, login_date TEXT);

Темы

CTE COUNT IN NOT IN

Подсказки

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

Задача «D1 retention одной когорты» учит считать удержание (retention) когортным методом на чистом SQL. Такие задачи регулярно дают на собеседованиях аналитиков данных. Уровень лёгкий — это база, которую должен уверенно держать каждый аналитик.

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

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

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

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