Middle
Was ist der Unterschied zwischen WHERE und HAVING?
sobes.tech KI
Antwort von AI
In SQL wird der Operator WHERE verwendet, um Zeilen vor der Gruppierung zu filtern, das heißt, er beschränkt den Datensatz, der an die Abfrage beteiligt ist.
HAVING wird verwendet, um bereits gruppierte Daten zu filtern, also nach der Ausführung von Aggregatfunktionen und Gruppierungen.
Beispiel:
SELECT department, COUNT(*) as employee_count
FROM employees
WHERE salary > 50000 -- filtert Mitarbeiter mit einem Gehalt über 50000
GROUP BY department
HAVING COUNT(*) > 10 -- wählt Abteilungen mit mehr als 10 solchen Mitarbeitern
Hier filtert WHERE zunächst Zeilen mit einem Gehalt über 50000, dann werden die Daten nach Abteilungen gruppiert, und HAVING filtert die Gruppen nach der Anzahl der Mitarbeiter.