SQL Оконные функции
Аналитические возможности SQL: OVER и PARTITION BY, агрегаты как оконные функции, ROW_NUMBER, RANK, DENSE_RANK, LAG, LEAD и рамки окна. Для тех, кто уже уверенно пишет JOIN и GROUP BY.
Для кого
Для аналитиков данных, backend-разработчиков, BI-аналитиков, инженеров данных и администраторов баз данных.
Что нужно знать заранее
SELECT, WHERE, GROUP BY, HAVING и агрегатные функции. JOIN и подзапросы желательны.
Чему учит курс
- Использовать оконные функции в запросах.
- Работать с OVER() и PARTITION BY.
- Применять агрегатные функции как оконные.
- Считать накопительные суммы и средние.
- Ранжировать строки через ROW_NUMBER, RANK и DENSE_RANK.
- Сравнивать строки через LAG и LEAD.
- Управлять рамками окна через ROWS и RANGE.
- Решать аналитические задачи на учебной базе.
Программа курса
Введение
- О Курсе
- Руководство по стилю SQL
- Что такое оконные функции в SQL
- Учебная база данных
Агрегатные оконные функции
- О Модуле
- MIN
- MAX
- COUNT
- AVG
- SUM
Практика по работе с агрегатными оконными функциями
- Часть 1
Ранжирующие оконные функции
- О Модуле
- ROW_NUMBER
- RANK
- DENSE_RANK
- PERCENT_RANK
- NTILE
Практика по работе с ранжирующими оконными функциями
- Часть 1
Оконные функции смещения
- О Модуле
- LAG
- LEAD
- FIRST_VALUE
- LAST_VALUE
- NTH_VALUE
Практика по работе с оконными функциями смещения
- Часть 1
Продвинутая логика окон
- О Модуле
- Границы окна
- Исключение строк из окна
- Фильтрация внутри оконной функции
- Переиспользование окон
Практика по продвинутой работе с оконными функциями
- Часть 1
Заключение
- Итоги курса
Названия модулей и уроков взяты из публичного описания курса на Stepik. Порядок и доступность уроков могут меняться на платформе.
Формат обучения
Теория, тесты и практические задачи. Синтаксис MySQL.
Платный курс. В программе 34 урока.
О диалекте SQL
Курс построен вокруг MySQL. В браузерной песочнице этого сайта используется SQLite: базовые запросы совпадают, но строковые, датовые функции и некоторые типы различаются. Проверяйте синтаксис в документации MySQL.