Middle
Czym są funkcje okienkowe w SQL i do czego służą?
sobes.tech AI
Odpowiedź od AI
Funkcje okienkowe (window functions) w SQL to funkcje, które wykonują obliczenia na zestawie wierszy powiązanych z bieżącym wierszem, bez grupowania wyników w jeden wiersz, jak ma to miejsce w funkcjach agregujących.
Pozwalają na przykład na obliczanie sum ruchomych, nadawanie rang wierszom, obliczanie sum skumulowanych, średnich itp., przy zachowaniu pierwotnej liczby wierszy w wyniku.
Przykład użycia funkcji okienkowej 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;
Dla każdego pracownika obliczany jest jego ranking według wynagrodzenia w ramach działu, przy zachowaniu wszystkich wierszy.
Funkcje okienkowe są przydatne w analizie, raportowaniu i skomplikowanych obliczeniach, gdzie konieczne jest widzenie kontekstu każdej linii względem innych.