Sobes.tech
Junior — Middle

Wat is het verschil tussen de HAVING-voorwaarde en de WHERE-voorwaarde bij het werken met SQL-query's?

sobes.tech AI

Antwoord van AI

Het belangrijkste verschil tussen WHERE en HAVING in SQL:

  • WHERE filtert rijen voor de groepering (GROUP BY). Het wordt toegepast op individuele records in de tabel.
  • HAVING filtert de groepen na de groepering. Het wordt gebruikt voor voorwaarden op aggregatiefuncties (bijvoorbeeld COUNT, SUM).

Voorbeeld:

SELECT afdeling, COUNT(*) as aantal_werknemers
FROM werknemers
WHERE salaris > 50000    -- filtert werknemers met salaris boven 50000
GROUP BY afdeling
HAVING COUNT(*) > 10     -- selecteert afdelingen met meer dan 10 werknemers

Hier selecteert WHERE de rijen voor de groepering, en filtert HAVING de al gegroepeerde gegevens.