Текст площадки «Stepik». Упомянутые цены и обещанные результаты могут быть неактуальны; условия покупки проверяйте у продавца.
Освойте оконные функции SQL от первой ROW_NUMBER до фреймов RANGE по датам, gaps & islands и mock-собеса бигтеха: ~195 задач с автопроверкой на MySQL 8 прямо в браузере. Единственный курс линейки целиком про окна, практика от базовых окон до сложных задач собеседований. Свою первую оконную функцию вы напишете уже на ша
Читать полное описание
Оконные функции — это водораздел между «умею писать SELECT» и «думаю как аналитик данных». Они дают то, что не умеет GROUP BY: видеть и отдельную строку, и агрегат рядом с ней. Цель курса — провести вас от первой ROW_NUMBER до уровня, на котором вы спокойно решаете задачи на окна с собеседований бигтеха и банков. Это единственный курс линейки целиком про оконные функции, и он последовательно доводит от базовых окон до сложных прикладных задач.
Почему именно этот курс. Окна обычно разбросаны по верхам в общих SQL-курсах — пара функций ранжирования и всё. Здесь окнам посвящён весь курс: 7 модулей, 43 урока, 449 шагов и 198 SQL-задач с автопроверкой, от механики окна до фреймов RANGE по датам и gaps & islands. Это не теория ради теории, а практика с первых минут: преобладают completion-задачи — дан скелет запроса, нужно заполнить OVER(...), PARTITION BY и рамку, с лестницей подсказок в 1–3 ступени. Доля продвинутых задач ★★★ — 20–25%, а в модуле собеседований до 35%.
Что вы приобретёте. После курса вы уверенно строите аналитические витрины на окнах: накопительный доход и доли нарастающим итогом, скользящие средние, MoM/YoY-темпы, рейтинги с tie-break, дедупликацию и forward-fill, поиск серий подряд. И главное — вы умеете объяснить своё решение вслух, как этого ждут на интервью.
Особенности курса:
— Прикладные кейсы и собес. Модуль M6 — главное конкурентное преимущество: реальные тестовые задания компаний и mock-собес (N-я по величине зарплата, топ-N в каждой категории, медиана по группе, дни подряд активности) плюс чеклист «как защищать оконное решение на интервью».
— Честная работа с диалектом. Движок автопроверки — строго MySQL 8.0, где оконные функции нативны: всё ранжирование, LAG/LEAD, фреймы ROWS и RANGE (включая RANGE … INTERVAL по датам). То, чего в MySQL 8 нет — фреймы GROUPS, клаузы EXCLUDE и FILTER — дано как локальные 🐘-задания на PostgreSQL (настоящий синтаксис вы выполняете у себя) плюс парный обход на платформе: CASE-эмуляция FILTER, арифметика для EXCLUDE, DENSE_RANK+ROWS для GROUPS. В конце каждой темы — раздел «В других СУБД».
— Акцент на граблях окон. Разбираем то, на чём спотыкаются все: почему окно нельзя положить в WHERE (обёртка в CTE), почему LAST_VALUE без полной рамки даёт «текущую» строку, как неявная рамка при ORDER BY превращает агрегат в накопительный, как обойти отсутствие IGNORE NULLS и PERCENTILE_CONT в MySQL.
— Сквозная база с «дырами под окна». Та же учебная БД University v3 (15 таблиц, MySQL 8, snake_case), что и в Курсе 1, но с детерминированно заложенными ситуациями именно под окна: ничьи в баллах для RANK, серии посещений с пропусками для gaps & islands, дубли для дедупликации, сгущение дат платежей в 7-дневном окне для RANGE INTERVAL, NULL-оценки для forward-fill.
— Ранняя победа и автопроверка в браузере. Первую рабочую оконную функцию вы пишете уже на шаге 3 первого содержательного урока. Теория — короткими шагами с разбором частых ошибок, 81 интерактивное задание на каждый раздел, ничего ставить не нужно.
Что нужно будет делать: читать короткие текстовые лекции с примерами, проходить тесты на понимание, решать SQL-задачи с автопроверкой прямо в браузере, разбирать свои ошибки, проходить практикумы и капстоуны.