Aggregat-Funktionen, z.B. SUM
Aggregatfunktionen in SQL sind mächtige Werkzeuge, die es ermöglichen, statistische Informationen aus Datensätzen zu berechnen. Sie werden typischerweise in Kombination mit der GROUP BY
-Klausel verwendet, können aber auch ohne sie angewendet werden.
SUM
- Beschreibung: Addiert die Werte einer Spalte.
- Syntax:
SELECT SUM(spaltenname) FROM tabelle;
- Beispiel:Berechnet die Gesamtsumme der Gehälter aller Mitarbeiter.
SELECT SUM(gehalt) FROM mitarbeiter;
AVG
- Beschreibung: Berechnet den Durchschnittswert einer Spalte.
- Syntax:
SELECT AVG(spaltenname) FROM tabelle;
- Beispiel:Ermittelt das durchschnittliche Gehalt der Mitarbeiter.
SELECT AVG(gehalt) FROM mitarbeiter;
COUNT
- Beschreibung: Zählt die Anzahl der Zeilen.
- Syntax:
SELECT COUNT(spaltenname) FROM tabelle;
- Beispiel:Zählt die Anzahl aller Mitarbeiter in der Tabelle.
SELECT COUNT(*) FROM mitarbeiter;
MAX
- Beschreibung: Findet den höchsten Wert in einer Spalte.
- Syntax:
SELECT MAX(spaltenname) FROM tabelle;
- Beispiel:Ermittelt das höchste Gehalt unter den Mitarbeitern.
SELECT MAX(gehalt) FROM mitarbeiter;
MIN
- Beschreibung: Findet den niedrigsten Wert in einer Spalte.
- Syntax:
SELECT MIN(spaltenname) FROM tabelle;
- Beispiel:Ermittelt das niedrigste Gehalt unter den Mitarbeitern.
SELECT MIN(gehalt) FROM mitarbeiter;
GROUP BY
- Beschreibung: Wird verwendet, um Ergebnissets in Gruppen aufzuteilen, über die dann Aggregatfunktionen angewendet werden können.
- Syntax:
SELECT spalte1, AGGREGATFUNKTION(spalte2) FROM tabelle GROUP BY spalte1;
- Beispiel:Zeigt die Gesamtsumme der Gehälter je Abteilung.
SELECT abteilung, SUM(gehalt) FROM mitarbeiter GROUP BY abteilung;
HAVING
- Beschreibung: Ermöglicht das Filtern von Gruppen basierend auf einem Kriterium, ähnlich der
WHERE
-Klausel, die jedoch auf einzelne Datensätze angewendet wird. - Syntax:
SELECT spalte1, AGGREGATFUNKTION(spalte2) FROM tabelle GROUP BY spalte1 HAVING AGGREGATFUNKTION(spalte2) > Wert;
- Beispiel:Listet Abteilungen mit einem durchschnittlichen Gehalt von mehr als 5000.
SELECT abteilung, AVG(gehalt) FROM mitarbeiter GROUP BY abteilung HAVING AVG(gehalt) > 5000;
Wichtige Hinweise
- Aggregatfunktionen ignorieren
NULL
-Werte in der Berechnung, außerCOUNT(*)
. COUNT(spaltenname)
zählt Einträge in der spezifizierten Spalte, die nichtNULL
sind.- Aggregatfunktionen können nicht nur auf numerische Daten angewendet werden. Zum Beispiel kann
MAX
oderMIN
auch auf Datums- oder Textdaten angewendet werden, um den neuesten Zeitpunkt oder den alphabetisch ersten/letzten Wert zu finden.
Fazit
Aggregatfunktionen sind unverzichtbare Werkzeuge in SQL für die Datenanalyse. Durch ihre Anwendung
können wichtige Einsichten in Datenmengen gewonnen werden, was für Berichterstattungen, Datenzusammenfassungen und Entscheidungsfindungen von entscheidender Bedeutung ist.