SQL для аналитиков
и разработчиков
Пиши реальные SQL-запросы прямо в браузере. Задачи из собеседований Яндекс, Ozon, Сбер — с мгновенной проверкой.
Учиться бесплатно · Не нужно ничего устанавливать
Два пути — один продукт
Тренажёр
Уже знаешь SQL? Прокачай навык на реальных задачах. ELO-рейтинг, лидерборд, задача дня.
- ✓ 150+ задач с реальных собеседований
- ✓ ELO рейтинг и таблица лидеров
- ✓ Задача дня + серия
- ✓ Сертификат Practitioner
Курс
Учишься с нуля? Структурированная программа с теорией, практикой и прогрессом.
- ✓ Теория + практика в каждом уроке
- ✓ Структурированный прогресс
- ✓ От SELECT до оконных функций
- ✓ Сертификат Analyst
Как это работает
Открой задачу
Читай условие с реальным бизнес-контекстом. Датасет уже загружен — маркетплейс, финтех, стриминг.
Пиши SQL
Monaco-редактор с подсветкой. Нажми «Выполнить» — результат появится мгновенно.
Проверяй и расти
«Проверить» сравнит твой запрос с эталоном. ELO обновится автоматически.
Курсы
SQL с нуля: первый запрос
БесплатноПервый шаг в мире SQL: выбираем данные из таблицы, фильтруем, сортируем, ищем по шаблону. После курса вы сможете самостоятельно формировать выгрузки из базы данных для Excel или Google Sheets.
Агрегация и отчётность
ProВы научитесь превращать тысячи строк в понятные цифры: считать выручку, строить отчёты по дням и месяцам, находить топ-клиентов и аномалии. После курса вы сможете отвечать на любые вопросы руководителя за 5 минут — одним SQL-запросом.
JOIN: объединение таблиц
ProВы научитесь работать с несколькими таблицами одновременно: объединять данные через JOIN, находить записи без пары, использовать подзапросы и строить многотабличные CRM-выгрузки. После курса вы сможете самостоятельно получать любые данные из реальных баз данных — без помощи разработчика.
Продвинутый аналитик
ProОконные функции, CTE и аналитические паттерны уровня Data Analyst. Вы освоите ROW_NUMBER, LAG/LEAD, накопительные итоги, когортный анализ и LTV — именно эти навыки требуют на собеседованиях в аналитику. Работаем с реальным fintech-датасетом: клиенты, счета, транзакции.
Архитектор данных
ProФинальный курс платформы — для тех, кто хочет не просто писать запросы, а проектировать базы данных. Вы освоите нормализацию (1НФ–3НФ), DDL, DML, транзакции, VIEW, индексы, а также построите полноценную схему Data Warehouse (Star Schema) с таблицами фактов и измерений. Работаем на реальном retail-датасете.
DML и работа с данными
ProНаучитесь уверенно изменять данные в PostgreSQL. Курс охватывает INSERT (VALUES, SELECT, многострочный), UPDATE (одиночный, массовый, UPDATE FROM), DELETE (по условию, каскадное), а также UPSERT через ON CONFLICT и цепочки RETURNING в CTE. Все задачи — на реальной пользовательской базе данных.
Подзапросы и CTE
ProОсвойте вложенные SELECT — один из ключевых инструментов опытного разработчика. Вы научитесь писать скалярные и табличные подзапросы, коррелированные подзапросы и EXISTS, именованные подзапросы через CTE (WITH) и их цепочки, рекурсивные CTE для обхода иерархий и LATERAL JOIN для задач Top-N per group. Работаем на датасете с оргструктурой, проектами и деревом категорий.
Транзакции и ACID
ProТранзакции и ACID — фундамент надёжных баз данных. Вы поймёте, зачем нужны BEGIN/COMMIT/ROLLBACK, как работают четыре свойства ACID (Atomicity, Consistency, Isolation, Durability), чем отличаются уровни изоляции READ COMMITTED, REPEATABLE READ и SERIALIZABLE, почему возникают дедлоки и как их избегать, а также освоите практические паттерны: upsert, идемпотентные операции и retry-логику. Курс незаменим для собеседований на позицию аналитика или backend-разработчика.
Оптимизация и индексы
ProНаучитесь читать план выполнения EXPLAIN ANALYZE и понимать, почему PostgreSQL выбирает Seq Scan вместо Index Scan. Освоите все типы индексов: B-tree, Hash, GIN, BRIN, partial и covering (INCLUDE). Узнаете антипаттерны, которые «ломают» индекс: функция на колонке, implicit cast, NOT IN с NULL. Поймёте, как работают VACUUM и ANALYZE, и как следить за состоянием базы через pg_stat_user_tables и pg_stat_user_indexes. 52 практических урока на датасете e-commerce.
Оконные функции
ProОконные функции — один из самых востребованных навыков на рынке аналитики данных. Вы освоите OVER(), PARTITION BY и ORDER BY в окне, функции ранжирования (ROW_NUMBER, RANK, DENSE_RANK, NTILE), навигационные функции (LAG, LEAD, FIRST_VALUE, LAST_VALUE), агрегатные оконные функции для вычисления долей и нарастающих итогов, а также управление фреймом (ROWS BETWEEN, RANGE BETWEEN). 74 урока на датасете продаж сотрудников — от первого OVER() до реальных аналитических отчётов в стиле интервью.
PostgreSQL для разработчика
ProPostgreSQL — это не просто «хранилище таблиц». В этом курсе вы освоите JSONB для работы с полу-структурированными данными, ARRAY для хранения и поиска по спискам, полнотекстовый поиск (tsvector, tsquery, ts_rank, ts_headline), GIN-индексы для ускорения JSONB и ARRAY операций, основы PL/pgSQL для хранимых функций и триггеров, а также разберёте разницу между VIEW и MATERIALIZED VIEW. 44 практических урока на датасете блог-платформы.
BI-дашборды на SQL
ProНаучитесь строить аналитические отчёты уровня Senior BI-аналитика. DATE_TRUNC и EXTRACT для группировки по периодам, MoM и YoY через LAG, нарастающие итоги и скользящее среднее. FILTER и CASE WHEN для pivot-таблиц без внешних инструментов. ROLLUP, CUBE и GROUPING SETS для многоуровневых иерархических отчётов. Когортный анализ, воронка продаж и анализ Парето. 42 практических урока на датасете продаж.
SQL + Python
ProПолный стек аналитика данных: от pandas до dbt. Вы научитесь читать pandas-код и понимать его SQL-эквивалент, строить dbt-модели в стиле staging → mart, писать переносимые Spark SQL запросы, понимать SQLAlchemy Core и ORM, избегать N+1 проблему и писать оптимальные аналитические запросы. 48 практических уроков на датасете SaaS-платформы.
PostgreSQL DBA
ProПрофессиональный курс для PostgreSQL DBA. Вы научитесь настраивать postgresql.conf и читать pg_settings, диагностировать кластер через системные каталоги, организовывать резервное копирование с pg_dump и pg_basebackup, настраивать WAL-архивирование и PITR, разворачивать потоковую репликацию и HA-кластеры с Patroni, мониторить производительность через pg_stat_statements. 50 практических уроков на датасете DBA-инфраструктуры.
ETL-пайплайны
ProПолный курс по построению ETL/ELT-пайплайнов для аналитики данных. Вы научитесь проектировать Extract-паттерны (full load, incremental, CDC), трансформировать данные (SCD Type 2, дедупликация, нормализация), строить DQ-проверки и мониторинг качества данных, оркестрировать пайплайны через Airflow-паттерны, обеспечивать идемпотентность и SLA-мониторинг, работать с потоковой обработкой (Kafka, Flink, Spark Streaming). 55 практических уроков на датасете реальной ETL-платформы.
Data Warehouse
ProПолный курс по проектированию и эксплуатации хранилищ данных. Вы научитесь строить схему «звезда» и «снежинка», работать с OLAP-операциями (ROLLUP, CUBE, GROUPING SETS), применять оконные функции для аналитики (MoM, retention, Pareto), понимать архитектуру колоночных СУБД (ClickHouse, BigQuery, Snowflake), оптимизировать запросы через партиционирование и материализованные представления, строить RFM-сегментацию, когортный анализ и basket analysis. 48 практических уроков на e-commerce DWH-датасете.
MongoDB для аналитиков
ProПрактический курс по MongoDB: от первого find-запроса до aggregate-пайплайнов и $lookup. Все задачи проверяются автоматически. Идеально для аналитиков, которые уже знают SQL.
Для школ
SQL Lab в классе
Создайте класс, назначьте курс и следите за прогрессом каждого ученика в реальном времени. Ученики входят по коду — без регистрации.
Классы
Добавляйте учеников списком
Прогресс
Live-таблица в реальном времени
Задания
Назначайте курсы одним кликом
Рейтинг
Лидерборд мотивирует учеников
Для университетов
SQL Lab на практике
Создайте группу, назначьте задание и следите за прогрессом студентов в реальном времени. Студенты входят по коду — без лишней регистрации.
Группы
Добавляйте студентов списком
Прогресс
Live-таблица на проекторе
Задания
Назначайте курсы по SQL
Ведомость
Экспорт прогресса в CSV
Бесплатно
SQL гайды с примерами
SQL JOIN: объединение таблиц
JOIN — основа реляционных баз данных. На каждом SQL-собеседовании обязательно будет задача с объединением таблиц. Разберём все виды JOIN с реальными примерами.
GROUP BY и агрегатные функции
GROUP BY — один из самых используемых операторов в аналитических запросах. Позволяет считать метрики по группам: выручка по месяцам, число заказов по пользователям, средний чек по категориям.
Оконные функции SQL
Оконные функции — самая сложная и самая ценная тема на SQL-собеседованиях в Яндекс, Ozon, Авито. Позволяют считать ранги, скользящие суммы, сравнивать строки между собой без GROUP BY.
Подзапросы в SQL
Подзапрос — это SELECT внутри другого SELECT. Позволяет решать задачи в несколько шагов: сначала вычислить что-то, потом использовать результат. Часто встречается на SQL-собеседованиях как способ проверить понимание логики.
CTE в SQL: оператор WITH
CTE (Common Table Expression) — именованный подзапрос, объявленный через WITH. Делает сложные запросы читаемыми, позволяет переиспользовать промежуточные результаты и строить иерархии через рекурсию.
CASE WHEN в SQL
CASE WHEN — условное выражение в SQL, аналог if-else. Позволяет прямо в запросе задавать логику: категоризировать значения, заменять NULL, считать метрики по условию.
Индексы в SQL: как ускорить запросы
Индексы — главный инструмент оптимизации SQL-запросов. Без них база данных читает все строки таблицы (seq scan). Правильный индекс ускоряет запрос в сотни раз. На собеседованиях часто спрашивают: «Как бы вы ускорили этот запрос?»
NULL в SQL: как работать с отсутствующими данными
NULL — отсутствие значения. Не ноль, не пустая строка — именно отсутствие. NULL ведёт себя неожиданно: NULL = NULL → false, NULL + 5 → NULL. Понимание NULL обязательно на любом SQL-собеседовании.