SQL COUNT() Fonction
La fonction SQL COUNT()
La fonction COUNT() renvoie le nombre de lignes correspondant à un critère spécifié.
Exemple
Trouvez le nombre total de produits dans le tableau Products :
SELECT COUNT(*)
FROM Products;
Try it Yourself »
Syntaxe
SELECT COUNT(column_name)
FROM table_name
WHERE condition;
Base de données de démonstration
Vous trouverez ci-dessous une sélection de la table Products utilisée dans les exemples :
| 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 |
Spécifier la colonne
Vous pouvez spécifier un nom de colonne au lieu du symbole astérisque (*).
Si vous spécifiez une colonne au lieu de (*), les valeurs NULL ne seront pas comptées.
Exemple
Trouvez le nombre de produits pour lesquels le ProductName n'est pas nul :
SELECT COUNT(ProductName)
FROM Products;
Try it Yourself »
Ajouter une clause Where
Vous pouvez ajouter une clause WHERE pour spécifier des conditions :
Exemple
Trouvez le nombre de produits dont le Price est supérieur à 20 :
SELECT COUNT(ProductID)
FROM Products
WHERE Price > 20;
Try it Yourself »
Ignorer les doublons
Vous pouvez ignorer les doublons en utilisant le mot-clé DISTINCT dans la fonction COUNT.
Si DISTINCT est spécifié, les lignes avec la même valeur pour la colonne spécifiée seront comptées comme une.
Exemple
Combien de prix différents existe-t-il dans le tableau Products :
SELECT COUNT(DISTINCT Price)
FROM Products;
Try it Yourself »
Utiliser un alias
Donnez un nom à la colonne comptée en utilisant le mot-clé AS.
Exemple
Nommez la colonne "number of records":
SELECT COUNT(*) AS [number of records]
FROM Products;
Try it Yourself »
Utiliser COUNT() avec GROUP BY
Ici, nous utilisons la fonction COUNT() et la clause GROUP BY pour renvoyer le nombre d'enregistrements pour chaque catégorie dans la table Products :
Exemple
SELECT COUNT(*) AS [Number of records], CategoryID
FROM Products
GROUP BY CategoryID;
Try it Yourself »
Vous en apprendrez davantage sur la clause GROUP BY plus tard dans ce tutoriel.