Miért nem egyezik az aggregált függvényekkel végzett lekérdezés eredményeiben szereplő értékek száma a sorok számával?
sobes.tech MI
Válasz az MI-től
A lekérdezés eredményeiben szereplő értékek száma nem egyezik meg az eredeti tábla sorainak számával, mert az aggregáló függvények (például SUM, COUNT, AVG, MAX, MIN) egy halmaz sorból egy vagy több értéket hoznak létre, összegzik az adatokat. Ha a lekérdezésben aggregáló függvényt használunk GROUP BY nélkül, az eredmény egy sor lesz, amely az egész adathalmazra vonatkozó összesített értéket tartalmazza.
Ha viszont GROUP BY-t alkalmazunk, az eredmény sorainak száma megegyezik az egyedi csoportok számával, nem az eredeti sorok számával. Például, ha egy oszlop szerint 5 egyedi érték szerint csoportosítunk, az eredmény 5 sort tartalmaz — egyet minden csoporthoz.
Példa:
SELECT department, COUNT(*) AS employee_count
FROM employees
GROUP BY department;
Ebben az esetben az eredmény minden osztályra egy sort tartalmaz, nem minden alkalmazottra.