Middle
Čo sú okienkové funkcie v SQL a na čo slúžia?
sobes.tech AI
Odpoveď od AI
Funkcie okien (window functions) v SQL sú funkcie, ktoré vykonávajú výpočty nad množinou riadkov spojených s aktuálnym riadkom, bez toho, aby výsledky zoskupovali do jedného riadku, ako je to pri agregačných funkciách.
Umožňujú napríklad vypočítať pohybové súčty, zoradiť riadky, vypočítať kumulatívne súčty, priemery a pod., pričom zachovávajú pôvodný počet riadkov vo výsledku.
Príklad použitia funkcie okien 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;
Tu sa pre každého zamestnanca vypočíta jeho poradie podľa platu v rámci oddelenia, pričom všetky riadky zostávajú zachované.
Funkcie okien sú užitočné pre analýzy, správy a zložité výpočty, kde je potrebné vidieť kontext každej riadky vo vzťahu k ostatným.