Глоссарий

Оконные функции SQL

Оконные функции (Window Functions) — SQL-функции, вычисляющие значение для каждой строки относительно связанного набора строк (окна), не сворачивая их в одну. Позволяют получать ранги, накопительные суммы и сравнения без подзапросов.

Синтаксис

SELECT
  name,
  salary,
  RANK() OVER (PARTITION BY dept ORDER BY salary DESC) AS rank,
  SUM(salary) OVER (PARTITION BY dept) AS dept_total,
  AVG(salary) OVER () AS company_avg
FROM employees;

Популярные функции

Vs GROUP BY

GROUP BY сворачивает строки в одну. Window function сохраняет все строки и добавляет вычисленное значение к каждой.