sql / intermediate
Snippet
Filtern aggregierter Daten mit HAVING
Die HAVING-Klausel filtert Gruppen, die durch die GROUP BY-Klausel erstellt wurden. Im Gegensatz zu WHERE, das einzelne Zeilen filtert, filtert HAVING basierend auf Ergebnissen von Aggregatfunktionen.
snippet.sql
1
2
3
4
SELECT department_id, AVG(salary) AS avg_salFROM employeesGROUP BY department_idHAVING AVG(salary) > 5000;
Erklärung
1
GROUP BY department_id
Gruppiert die Rohdaten in Segmente basierend auf der Abteilungs-ID.
2
HAVING AVG(salary) > 5000;
Filtert ganze Abteilungen heraus, in denen das Durchschnittsgehalt die Kriterien nicht erfüllt.