Junior — Middle
Wat is het verschil tussen de operators HAVING en WHERE in SQL en wanneer moeten ze worden gebruikt?
sobes.tech AI
Antwoord van AI
De WHERE-operator wordt gebruikt om rijen te filteren voordat de gegevens worden gegroepeerd. Het selecteert de rijen die deelnemen aan verdere operaties, zoals aggregatiefuncties.
De HAVING-operator wordt toegepast om al gegroepeerde gegevens te filteren, dat wil zeggen na het uitvoeren van GROUP BY. Het stelt je in staat om groepen te filteren op basis van aggregatievoorwaarden.
Voorbeeld:
SELECT department, COUNT(*) AS employee_count
FROM employees
WHERE salary > 50000 -- filteren van rijen op salaris
GROUP BY department
HAVING COUNT(*) > 5 -- filteren van groepen op aantal werknemers
Samenvatting:
- WHERE filtert individuele records vóór het groeperen.
- HAVING filtert de groepen na het groeperen.
Gebruik WHERE voor voorwaarden op individuele velden, HAVING voor voorwaarden op aggregatiefuncties.