COUNT
Zählt Zeilen oder die Werte eines Ausdrucks, die nicht NULL sind.
PostgreSQL 17.5
COUNT(* | [DISTINCT] expression)Parameter
- *Schlüsselwort
- Alle Zeilen zählen, auch Zeilen mit NULL
- DISTINCTSchlüsselwortoptional
- Nur eindeutige Werte von expression zählen
- expression
- Ausdruck, gezählt werden nur Zeilen, in denen er nicht NULL ist
Rückgabewert
Ganze Zahl (bigint); 0 bei leerer Menge, nicht NULL
Beispiele
Alle Zeilen der Tabelle
PostgreSQL 17.5
SELECT COUNT(*)
FROM FamilyMembers;Anzahl verschiedener Status
PostgreSQL 17.5
SELECT COUNT(DISTINCT status)
FROM FamilyMembers;Alle Zeilen und Werte ohne NULL
PostgreSQL 17.5
SELECT COUNT(*) AS all_teachers,
COUNT(middle_name) AS with_middle_name
FROM Teacher;Details
Anders als in MySQL wird COUNT(DISTINCT a, b) mit mehreren Spalten nicht unterstützt: Eindeutige Paare zählst du mit COUNT(DISTINCT (a, b)). Um nur die Zeilen zu zählen, die eine Bedingung erfüllen, verwende COUNT(*) FILTER (WHERE ...).