Middle
Hogyan lehet az adatokat csoportokra bontani ablakfüggvények segítségével SQL-ben?
sobes.tech MI
Válasz az MI-től
Az SQL ablakfüggvényei lehetővé teszik, hogy számításokat végezzenek sorcsoportokon, anélkül, hogy az eredményt egyetlen sorra csökkentenék, mint a GROUP BY esetén. Ezek egy sorokat tartalmazó (ablak) halmazon dolgoznak, amely minden sorhoz van rendelve.
Az adatok csoportokra bontásához és az ablakfüggvények alkalmazásához a OVER (PARTITION BY ...) szerkezetet használják. Például:
SELECT
employee_id,
department_id,
salary,
RANK() OVER (PARTITION BY department_id ORDER BY salary DESC) AS salary_rank
FROM employees;
Ebben az esetben az adatokat a department_id szerint csoportosítják, és minden csoporton belül kiszámítják a fizetési rangsort.
Így az ablakfüggvények lehetővé teszik az adatok csoportok szerinti elemzését, miközben az eredeti táblázat összes sorát megőrzik.