Junior — Middle
Wat is het verschil tussen de voorwaarden WHERE en HAVING bij het werken met SQL-query's?
sobes.tech AI
Antwoord van AI
In SQL worden de voorwaarden WHERE en HAVING gebruikt om gegevens te filteren, maar ze worden toegepast in verschillende fasen van de query-verwerking:
WHEREfiltert de rijen voor groepering en aggregatie. Het beperkt de dataset die in de query wordt gebruikt.HAVINGfiltert de groepen nadat aggregatiefuncties (bijvoorbeeldSUM,COUNT,AVG) zijn toegepast. Het wordt gebruikt om de resultaten van de aggregatie te beperken.
Voorbeeld:
SELECT afdeling, COUNT(*) as aantal_werknemers
FROM werknemers
WHERE salaris > 50000 -- filtert werknemers met salaris > 50000
GROUP BY afdeling
HAVING COUNT(*) > 10; -- selecteert afdelingen met meer dan 10 werknemers
Hier selecteert WHERE werknemers met een salaris hoger dan 50000, en HAVING filtert de afdelingen waar meer dan 10 werknemers zijn.