Waarom is het aantal waarden in de resultaten van een query met aggregatiefuncties niet gelijk aan het aantal rijen?
sobes.tech AI
Antwoord van AI
Het aantal waarden in de resultaten van een query met aggregatiefuncties is niet gelijk aan het aantal rijen van de oorspronkelijke tabel, omdat aggregatiefuncties (bijvoorbeeld SUM, COUNT, AVG, MAX, MIN) een verzameling rijen reduceren tot één of meerdere waarden, waarmee de gegevens worden samengevat. Als in de query een aggregatiefunctie zonder GROUP BY wordt gebruikt, zal het resultaat één rij zijn met de geaggregeerde waarde over de hele dataset.
Als er echter gebruik wordt gemaakt van GROUP BY, dan is het aantal rijen in het resultaat gelijk aan het aantal unieke groepen, niet aan het aantal oorspronkelijke rijen. Bijvoorbeeld, als je groepeert op een kolom met 5 unieke waarden, bevat het resultaat 5 rijen — één per groep.
Voorbeeld:
SELECT department, COUNT(*) AS employee_count
FROM employees
GROUP BY department;
Hier bevat het resultaat één rij per afdeling, niet per werknemer.