SQL на практике — рекурсивные CTE и оконные функции

Практический курс по SQL для тех, кто уже уверенно пишет SELECT, JOIN и GROUP BY и хочет перейти на следующий уровень. Вы освоите рекурсивные CTE для обхода деревьев и графов, полный набор оконных функций и точное управление фреймами окон. Курс построен на реальной учебной базе данных и включает 56 теоретических…
Средний уровень
5-7 часов в неделю
Сертификат Stepik

Чему вы научитесь

  • Писать рекурсивные CTE для обхода деревьев, иерархий (оргструктуры, категории) и графов с циклами
  • Сравнивать CTE и подзапросы по читаемости и производительности — и выбирать подходящий инструмент
  • Применять LAG и LEAD для доступа к соседним строкам в окне без самосоединения
  • Извлекать граничные значения окна с помощью FIRST_VALUE и LAST_VALUE
  • Разбивать строки на квантили через NTILE и вычислять процентильные ранги (PERCENT_RANK, CUME_DIST)
  • Точно управлять границами вычислений через фреймы окон: ROWS BETWEEN, RANGE BETWEEN, GROUPS
  • Понимать неочевидное поведение OVER(ORDER BY) без явного фрейма и задавать фреймы явно
  • Решать задачи на скользящие агрегаты и нарастающие итоги с правильно заданным фреймом

О курсе

Цель курса

Переход от «умею писать запросы» к «умею решать сложные задачи эффективно»: рекурсивные CTE для иерархий и графов, полный арсенал оконных функций и точное управление фреймами окон — на реальной учебной базе данных с немедленной обратной связью на каждом шаге.

Для кого этот курс

Те, кто прошёл первый курс серии Вы освоили SELECT, JOIN, GROUP BY, подзапросы и базовые CTE. Хотите двигаться дальше — рекурсивные CTE, LAG/LEAD, фреймы окон и работа с иерархическими данными.

Аналитики и специалисты по данным Вы пишете SQL в работе, но сталкиваетесь с задачами, где не хватает инструментов: обход иерархий, сравнение строк внутри группы, точные скользящие окна.

Разработчики, работающие с базами данных Хотите понять рекурсивные CTE и оконные функции не поверхностно, а с пониманием того, как они работают.

Самоучки с базовым уровнем SQL Знаете основы, но рекурсивные CTE и продвинутые оконные функции пока остаются тёмным пятном.

Почему этот курс

Курс построен по принципу «минимум теории — максимум практики»: каждая концепция сразу закрепляется тестами и SQL-заданиями с автопроверкой. Все примеры и задания работают на одной учебной базе данных (edu), поэтому данные знакомы с первого урока и не меняются от темы к теме.

Что вы получите

По окончании курса вы уверенно применяете рекурсивные CTE для иерархических структур, используете полный набор оконных функций и задаёте фреймы окон явно — понимая, почему поведение по умолчанию бывает неочевидным.

Особенности

  • Учебная СУБД — PostgreSQL, все примеры и синтаксис соответствуют стандарту

  • 56 теоретических тестов и 66 практических SQL-заданий с автопроверкой

  • Каждый урок включает теорию, квиз и практику — три уровня закрепления

Обратная связь на каждом шаге

В практических заданиях автопроверка не просто говорит «неверно», а подсказывает, в чём конкретно ошибка. Для практических заданий можно раскрыть подсказку с ожидаемым результатом — чтобы снять сомнения и лучше понять, что именно требуется написать.

В квизах каждый вариант ответа — правильный и неправильный — сопровождается объяснением: почему именно так.

В практических заданиях автопроверка не просто говорит «неверно», а подсказывает, в чём конкретно ошибка.

Если что-то осталось непонятным — можно задать вопрос в комментариях к уроку и получить ответ от студентов или от меня. Также, можете писать в telegram (указан на странице профиля)

Что нужно будет делать

Читать теорию, отвечать на вопросы квиза, писать SQL-запросы в редакторе с автопроверкой. Рекомендуемый темп: 5–7 часов в неделю. В таком режиме курс можно пройти за 2–3 недели.

Разделы курса

5 модулей: введение → быстрый старт (recap CTE и оконных функций) → CTE углублённо (рекурсия, иерархии, графы) → оконные функции полный набор (LAG/LEAD, FIRST/LAST_VALUE, NTILE, процентильные ранги) → фреймы окон (ROWS, RANGE, GROUPS).

Начальные требования

Курс рассчитан на тех, кто уверенно пишет запросы к одной таблице и умеет объединять несколько таблиц.

Необходимо знать:

  • SELECT, WHERE, ORDER BY, LIMIT, OFFSET

  • AND/OR/NOT, LIKE, IN, BETWEEN, IS NULL

  • Строковые, числовые функции и функции дат, CASE WHEN

  • COUNT/SUM/AVG/MIN/MAX, GROUP BY, HAVING, DISTINCT

  • INNER JOIN, LEFT/RIGHT JOIN, FULL OUTER JOIN, CROSS JOIN, UNION/INTERSECT/EXCEPT

  • Подзапросы в SELECT, FROM, WHERE; EXISTS/ANY/ALL

  • Базовый синтаксис WITH (CTE), несколько CTE в одном запросе

ROW_NUMBER/RANK/DENSE_RANK и нарастающий итог SUM OVER знать желательно, но не обязательно — Модуль 2 курса даёт краткое повторение.

Хотите подготовиться или восполнить пробелы — всё это есть в первом курсе серии: «SQL на практике с нуля — от SELECT до оконных функций».

Наши преподаватели

Как проходит обучение

Курс состоит из текстовых уроков, квизов и практических SQL-заданий — без видеолекций.

Каждый урок включает три части:

  • Теория — объяснение концепции с примерами запросов и таблицами результатов на реальных данных схемы edu

  • Квиз — вопросы на проверку понимания (одиночный выбор, сопоставление, расстановка шагов по порядку)

  • Практика — SQL-задания с автопроверкой: нужно написать запрос, который вернёт правильный результат

Автопроверка заданий даёт мгновенную обратную связь: если запрос неверный, система подскажет, в чём именно ошибка — отсутствует PARTITION BY, неверное условие HAVING, пропущен ORDER BY внутри OVER и т.д.

Всего в курсе: 56 теоретических тестов и 66 практических SQL-заданий.

Остались вопросы — пишите лично, с удовольствием отвечу: t.me/xordal

Программа курса

загружаем...
Certificate

Сертификат

Сертификат Stepik

Что вы получаете

  • Практические навыки SQL продвинутого уровня: рекурсия, полный набор оконных функций, фреймы
  • 56 теоретических тестов и 66 практических SQL-заданий с автопроверкой и подсказками — отработка каждой темы сразу после теории
  • Сертификат об успешном прохождении курса
  • Пожизненный доступ к материалам курса — можно возвращаться в любой момент

Сколько стоит обучение

Price: 1 990 
Вы попробовали и поняли, что вам сейчас не подходит этот курс? Ничего страшного, мы вернём вам деньги в течение 30-ти дней после покупки.

Часто задаваемые вопросы

Расскажите о курсе друзьям

Price: 1 990