De ce numărul de valori din rezultatele unei interogări cu funcții de agregare nu este egal cu numărul de rânduri?
sobes.tech AI
Răspuns de la AI
Numărul de valori din rezultatele unei interogări cu funcții de agregare nu este egal cu numărul de rânduri ale tabelului original, deoarece funcțiile de agregare (de exemplu, SUM, COUNT, AVG, MAX, MIN) reduc un set de rânduri la una sau mai multe valori, sintetizând datele. Dacă în interogare se folosește o funcție de agregare fără GROUP BY, rezultatul va fi o singură linie cu valoarea agregată pentru întregul set de date.
Dacă se folosește GROUP BY, atunci numărul de rânduri din rezultat va fi egal cu numărul de grupuri unice, nu cu numărul de rânduri originale. De exemplu, dacă se grupează după o coloană cu 5 valori unice, rezultatul va conține 5 rânduri — câte unul pentru fiecare grup.
Exemplu:
SELECT department, COUNT(*) AS employee_count
FROM employees
GROUP BY department;
Aici, rezultatul conține câte o linie pentru fiecare departament, nu pentru fiecare angajat.