SQL COUNT()-Funktion
Die SQL COUNT()-Funktion
Die Funktion COUNT() gibt die Anzahl der Zeilen zurück, die einem angegebenen Kriterium entsprechen.
Beispiel
Suchen Sie die Gesamtzahl der Produkte in der Tabelle Products:
SELECT COUNT(*)
FROM Products;
Try it Yourself »
Syntax
SELECT COUNT(column_name)
FROM table_name
WHERE condition;
Demo-Datenbank
Nachfolgend finden Sie eine Auswahl aus der in den Beispielen verwendeten Tabelle Products:
| ProductID | ProductName | SupplierID | CategoryID | Unit | Price |
|---|---|---|---|---|---|
| 1 | Chais | 1 | 1 | 10 boxes x 20 bags | 18 |
| 2 | Chang | 1 | 1 | 24 - 12 oz bottles | 19 |
| 3 | Aniseed Syrup | 1 | 2 | 12 - 550 ml bottles | 10 |
| 4 | Chef Anton's Cajun Seasoning | 2 | 2 | 48 - 6 oz jars | 22 |
| 5 | Chef Anton's Gumbo Mix | 2 | 2 | 36 boxes | 21.35 |
Spalte angeben
Sie können anstelle des Sternchensymbols einen Spaltennamen angeben (*).
Wenn Sie anstelle von (*) eine Spalte angeben, werden NULL-Werte nicht gezählt.
Beispiel
Suchen Sie die Anzahl der Produkte, bei denen ProductName nicht null ist:
SELECT COUNT(ProductName)
FROM Products;
Try it Yourself »
Hinzufügen einer Where-Klausel
Sie können eine WHERE-Klausel hinzufügen, um Bedingungen anzugeben:
Beispiel
Ermitteln Sie die Anzahl der Produkte, bei denen der Price höher als 20 ist:
SELECT COUNT(ProductID)
FROM Products
WHERE Price > 20;
Try it Yourself »
Duplikate ignorieren
Sie können Duplikate ignorieren, indem Sie das Schlüsselwort DISTINCT in der Funktion COUNT verwenden.
Wenn DISTINCT angegeben ist, werden Zeilen mit demselben Wert für die angegebene Spalte als eine gezählt.
Beispiel
Wie viele verschiedene Preise gibt es in der Tabelle Products:
SELECT COUNT(DISTINCT Price)
FROM Products;
Try it Yourself »
Verwenden Sie einen Alias
Geben Sie der gezählten Spalte einen Namen, indem Sie das Schlüsselwort AS verwenden.
Beispiel
Benennen Sie die Spalte "number of records":
SELECT COUNT(*) AS [number of records]
FROM Products;
Try it Yourself »
Verwenden Sie COUNT() mit GROUP BY
Hier verwenden wir die Funktion COUNT() und die Klausel GROUP BY, um die Anzahl der Datensätze für jede Kategorie in der Tabelle „Produkte“ zurückzugeben:
Beispiel
SELECT COUNT(*) AS [Number of records], CategoryID
FROM Products
GROUP BY CategoryID;
Try it Yourself »
Später in diesem Tutorial erfahren Sie mehr über die GROUP BY-Klausel.