Lektionen des Moduls (4/4)
Zählen und Zusammenfassen: COUNT, AVG, MAX
Bisher hat jeder SELECT eine Zeile für jede Zeile der Tabelle zurückgegeben.
Aggregatfunktionen bewirken das Gegenteil: Sie lesen viele Zeilen und geben zurück
ein einzelner Wert, der sie zusammenfasst.
Die häufigsten sind:
COUNT(*)– wie viele Zeilen es gibt.AVG(column)– der Durchschnitt numerischer Werte (ignoriertNULL).MAX(column)/MIN(column)– der Maximal-/Minimalwert.SUM(column)– die Summe numerischer Werte.
SELECT COUNT(*),
AVG(salary),
MAX(salary)
FROM employees;Wenn das Aggregat auf die gesamte Tabelle angewendet wird (ohne GROUP BY, was
Sie werden im nächsten Modul sehen), dass das Ergebnis unabhängig davon eine einzelne Zeile ist
wie viele Zeilen die Quelltabelle hat.
Kombination mit WHERE
WHERE-Filter vor der Aggregation: Die Aggregation funktioniert nur für die Zeilen
das den Filter passiert hat.
-- Stipendio medio dei soli dipendenti del Marketing (department_id = 3):
SELECT AVG(salary)
FROM employees
WHERE department_id = 3;Probieren Sie es aus
Wie viele Mitarbeiter wurden seit dem 1. Januar 2020 eingestellt? Gibt eine einzelne Zahl zurück (eine Zeile, eine Spalte).
Hinweis anzeigen
Die Funktion, die Zeilen zählt, ist COUNT(*).
Lösung nach 3 Versuchen verfügbar
Wiederholungsübung
Berechnen Sie in einer einzigen Abfrage das durchschnittliche (AVG) und maximale (MAX) Gehalt der Mitarbeiter im Marketing (department_id = 3). Eine Zeile, zwei Spalten.
Hinweis anzeigen
Sie können mehrere Aggregatfunktionen, durch Kommas getrennt, in dasselbe SELECT einfügen.
Lösung nach 3 Versuchen verfügbar