Sobes.tech
Junior — Middle

Kas saaksite selgitada, mis on aknafunktsioonid SQL-is?

sobes.tech AI

Vastus AI-lt

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

Пример оконной функции — ROW_NUMBER(), которая нумерует строки в пределах заданного окна:

SELECT
  employee_id,
  department_id,
  salary,
  ROW_NUMBER() OVER (PARTITION BY department_id ORDER BY salary DESC) AS rank_in_dept
FROM employees;

Здесь для каждого отдела (partition) строки нумеруются по убыванию зарплаты, но все строки остаются в результате.