Все инструменты
Конструктор оконных функций
Визуально собираете PARTITION BY / ORDER BY / фрейм — получаете синтаксис
Функция
Ранжирование
Смещение
Агрегация
Уникальный порядковый номер строки в каждой секции. Не бывает дубликатов.
PARTITION BY (секции)
ORDER BY (обязательно)
Оконная функция
ROW_NUMBER() OVER (
PARTITION BY department
ORDER BY salary DESC
) AS resultPARTITION BY
Делит таблицу на независимые секции. Функция вычисляется отдельно для каждой.
ORDER BY
Определяет порядок строк внутри секции. Для нарастающих итогов — обязателен.
ROWS BETWEEN
Задаёт физические границы фрейма. RANGE работает по значению, не по позиции.