## Set-Funktionen

Das Datenbanksystem verfügt über Funktionen, die spaltenweise über mehrere Zeilen arbeiten, die Set-Funktionen. Im Einzelnen sind folgende Set-Funktionen möglich: AVG, COUNT, MAX, MIN, STDDEV, SUM und VARIANCE.

Set-Funktionen arbeiten über Gruppen von Zahlen, aber sie geben nur einen Wert zurück. Das Ergebnis besteht also aus einer Zeile. Wenn eine Set-Funktion in einer Datenanfrage verwendet wird, muss auch auf jede andere Spalte der Anfrage eine solche Funktion angewandt werden. Dies gilt jedoch nicht für eine Spalte, über die mittels GROUP BY eine Gruppierung vorgenommen wurde. Es wird dann für jede Gruppe der Wert der Set-Funktion bestimmt (siehe dazu: Bilden von Gruppen: GROUP BY, HAVING).

NULL-Werte werden, mit Ausnahme bei COUNT(*), nicht in die Berechnung einer Set-Funktion einbezogen.

### Voraussetzungen

Sie benötigen die Demo-Daten für das SQL-Tutorial.

Starten Sie das Query Tool SQL Studio als Datenbankadministrator MONA mit dem Kennwort RED und melden Sie sich an die Demo-Datenbankinstanz DEMODB an.

### Beispiele

SELECT COUNT(*) number
FROM hotel.customer

Anzahl der Kunden

Ergebnis

NUMBER
15

SELECT COUNT(DISTINCT name) number_city
FROM hotel.city

Anzahl der verschiedenen Orte

Ergebnis

NUMBER_CITY
21

SELECT SUM(price) sum_price, MIN(price) min_price, FIXED(AVG(price),5,2) avg_price, MAX(price) max_price, COUNT(*) number_room
FROM hotel.room
WHERE type = 'single'

Auswertungen der Preise der Einzelzimmer: Summe aller Preise, minimaler Preis, Durchschnittspreis, maximaler Preis, Anzahl der Einzelzimmer

Ergebnis

SUM_PRICE | MIN_PRICE | AVG_PRICE | MAX_PRICE | NUMBER_ROOM
1450 | 45 | 96.67 | 160 | 15

Siehe auch:

SQL-Referenzhandbuch, Ausdruck (expression)

SQL-Referenzhandbuch, Set-Funktion (set_function_spec)

Weitere Beispiele zur Datenanfrage