Чему вы научитесь
- Писать оконные функции с OVER, PARTITION BY и ORDER BY и объяснять, чем окно отличается от GROUP BY (окно не схлопывает строки)
- Ранжировать данные через ROW_NUMBER, RANK, DENSE_RANK и NTILE и осознанно выбирать нужную функцию по поведению на ничьих
- Строить топ-N по группам, Nth highest, топ-10% и считать медиану окном — без PERCENTILE_CONT, которого нет в MySQL
- Сравнивать строки во времени функциями LAG и LEAD: период-к-периоду, MoM/YoY, рост и падение, корректный default для первой строки
- Применять FIRST_VALUE, LAST_VALUE и NTH_VALUE и понимать, почему рамка решает всё, а LAST_VALUE без полной рамки врёт
- Строить агрегаты в окнах и управлять фреймами ROWS и RANGE: скользящие средние, нарастающие итоги, доли, RANGE … INTERVAL по календарным датам
- Решать прикладные кейсы окнами: дедупликация, forward-fill пропусков, поиск выбросов, gaps & islands, когорты, сессии, Парето 80/20
- Решать и вслух защищать классические задачи SQL-собеседований бигтеха и банков на оконных функциях
- Читать чужие оконные запросы, находить типичные грабли окон и обходить ограничения MySQL (IGNORE NULLS, GROUPS, EXCLUDE, FILTER)
О курсе
Для кого этот курс
Начальные требования
Это вторая ступень по сложности — курс предполагает уверенный SQL уровня аналитик.
— Пройденная предыдущая ступень — Курс 1 «SQL для аналитика: подзапросы, CTE и продвинутые функции» (та же учебная БД University v3). Если этих тем нет, начните с него — курс прямо отправляет туда при пробеле.
— Уверенный GROUP BY и агрегаты: COUNT, SUM, AVG, MIN, MAX, HAVING.
— Умение писать подзапросы: скалярные, в WHERE и FROM, EXISTS.
— Умение писать и читать CTE (WITH), в том числе цепочки CTE.
— Понимание логического порядка выполнения запроса: FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY.
Ничего устанавливать не нужно — все задачи решаются и проверяются прямо на платформе на движке MySQL 8.0. Для 4 локальных 🐘-заданий по желанию пригодится PostgreSQL у себя, но на прохождение курса это не влияет.
Преподаватели курса
Как проходит обучение
Курс текстово-интерактивный и полностью проходится в браузере, в своём темпе и без дедлайнов.
— Короткие текстовые лекции с примерами на учебной базе University v3 и разбором частых ошибок — живым языком, без академической сухости.
— SQL-задачи с автопроверкой (~195) прямо в браузере на движке MySQL 8.0: пишете запрос — система сразу сверяет результат. Преобладают completion-задачи (заполни OVER(...)/PARTITION BY/рамку) с лестницей подсказок в 1–3 ступени.
— Интерактивные тесты к каждому разделу (~55): выбор ответа, сопоставление, заполнение пропусков и другие форматы.
— Локальные 🐘-задания на PostgreSQL для GROUPS, EXCLUDE и FILTER, которых нет в MySQL 8: настоящий синтаксис у себя плюс парный обход на платформе.
— Практикумы и капстоуны в конце модулей, включая капстоун «рейтинговая витрина» и финальный капстоун «аналитическая витрина на окнах» с автопроверкой и эталонным разбором.
— Отдельный модуль-разбор M7: консолидация всех заданий и тестов, блок «MySQL-эмуляция vs настоящий PostgreSQL» и собес-чеклист.
— Поддержка автора в комментариях и обсуждения под каждым шагом.
Логика курса — от простого к сложному с ранней победой: первую рабочую оконную функцию вы пишете уже на шаге 3, а дальше шаг за шагом доходите до фреймов RANGE по датам, gaps & islands и mock-собеса
Что вы получите
- Востребованный навык: оконные функции — водораздел между junior- и senior-уровнем SQL, их спрашивают на собеседованиях аналитиков, дата-инженеров и backend-разработчиков.
- Объём практики: ~195 SQL-задач с автопроверкой и ~55 интерактивных тестов на единой реалистичной базе — теорию сразу отрабатываете на деле, заявленное покрытие уровня Senior ~92%.
- Готовность к собеседованию: реальные тестовые задания бигтеха и банков, mock-собес и чеклист «как защищать оконное решение на интервью».
- Честное знание диалекта: что нативно в MySQL 8, а что — особенность PostgreSQL (GROUPS, EXCLUDE, FILTER, PERCENTILE_CONT) и как это обойти.
- Поддержку автора в комментариях и обсуждения под шагами.
- Доступ в своём темпе: возвращайтесь к материалам и пересдавайте задания сколько нужно.
- Сертификат Stepik по итогам прохождения.
- Мост дальше: после оконных функций логичная следующая ступень — Курс 3 «Проектирование и управление базами данных» и/или флагман Курс 4 «SQL под капотом: индексы, оптимизация и транзакции». Финальный шаг курса и разбор M7 содержат CTA на следующую ступень.