Junior — Middle
Da li imate iskustva u korišćenju funkcija prozora prilikom rada sa SQL upitima?
sobes.tech АИ
Одговор од АИ
Да, при раду са SQL упитима користио сам оконске функције (window functions). Оне омогућавају извођење калкулација над скупом редова који су повезани са тренутним редом, без груписања резултата, што је корисно за анализе и сложене упите.
Главне оконске функције:
ROW_NUMBER()— нумерисање редова у окнуRANK(),DENSE_RANK()— рангирање узимајући у обзир једнакостиSUM(),AVG(),COUNT()— агрегатне функције у окну
Пример: добијање листе запослених са њиховим платама и редним бројем по одељењу у опадајућем редоследу плате:
SELECT
employee_id,
department_id,
salary,
ROW_NUMBER() OVER (PARTITION BY department_id ORDER BY salary DESC) AS salary_rank
FROM employees;
Овде, PARTITION BY дели податке по одељењима, а ORDER BY одређује редослед унутар сваког одељења. Оконске функције омогућавају извођење сложених аналитичких упита без губитка детаља.