Introduction
Dans PostgreSQL, la fonction COUNT()
renvoie le nombre de lignes dans une table spécifiée, et une instruction SELECT
renvoie les enregistrements qui correspondent aux conditions de requête spécifiées. Utilisées ensemble, cette fonction et cette instruction peuvent faire passer vos requêtes PostgreSQL au niveau supérieur et renvoyer le nombre d’enregistrements qui répondent aux critères spécifiés dans la requête. Dans cet article, nous allons montrer comment utiliser les fonctions COUNT et SELECT de Postgres en tandem pour savoir combien d’enregistrements sont renvoyés par une requête donnée.
Prérequis
Avant d’aller plus loin dans ce tutoriel, assurez-vous que PostgreSQL est installé sur votre ordinateur. Vous aurez besoin d’utiliser la base de données pour effectuer vos déclarations SELECT COUNT
. Vous devrez également avoir quelques connaissances de base de PostgreSQL afin de suivre les exemples fournis dans cet article.
PostgreSQL COUNT SELECT
La syntaxe suivante est utilisée lorsque la fonction COUNT()
est utilisée conjointement avec une instruction SELECT
:
1
|
SELECT COUNT ( , ) FROM TABLE_NAME;
|
Détaillons un peu la syntaxe présentée ci-dessus :
-
SELECT
– Elle est utilisée pour sélectionner certaines colonnes de la base de données. -
COUNT
– Ceci est utilisé pour compter le nombre d’enregistrements dans cette table. -
DISTINCT
– Cette clause est utilisée pour éliminer les doublons des enregistrements retournés. -
Asterisk (*)
– L’utilisation de l’astérisque équivaut à sélectionner toutes les colonnes d’une table. -
column_name
– Cela représente le nom de la colonne pour laquelle vous voulez compter les enregistrements. -
table_name
– Cela représente le nom de la table pour laquelle vous voulez compter les enregistrements.
Exemples de fonction de comptage PostgreSQL
Nous utiliserons une table nommée countries
dans nos exemples :
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
id_pays | nom_pays | continent | code
————+————————–+—————+—— 35 | Afrique du Sud | AF 14 | Canada | Amérique du Nord | NA 51 | Cuba | Amérique du Nord | NA 41 | Mexique | Amérique du Nord | NA 45 | Etats-Unis d’Amérique | Amérique du Nord | NA 85 | Argentine | Amérique du Sud | SA 37 | Venezuela | Amérique du Sud | SA 63 | Philippines | Amérique du Sud | AS 83 Asie | AS 83 | Chine | Asie | AS 22 | Russie | Asie | AS 21 | Emirats Arabes Unis | Asie | AS 62 | Allemagne | Europe | EU 73 | Italie | Europe | EU 28 | Royaume-Uni | Europe | EU |
SELECT COUNT all example
Pour notre premier exemple, nous allons compter le nombre de lignes dans la table :
1
|
SELECT COUNT(*) AS number_of_rows FROM countries;
|
Le résultat de cette requête ressemblera à ce qui suit :
1
2 3 |
number_of_rows
—————- 14 |
Notez que nous avons utilisé un alias en incluant la clause AS
pour spécifier le nouveau nom de la colonne.
Le résultat ne comprend qu’une seule colonne, puisque la seule donnée renvoyée est le nombre de lignes dans le tableau.
Exemple de colonne COUNT
Puis, essayons de compter le nombre de lignes dans une colonne spécifiée.
1
|
SELECT COUNT(« nom_du_pays ») AS nombre_de_lignes FROM pays;
|
Le résultat de cette requête peut être vu ci-dessous :
1
2 3 |
number_of_rows
—————- 14 |
Le résultat est le même que celui du premier exemple puisque cette requête compte également le nombre total de lignes dans la table.
Compte distinct exemple
Tentons un exemple plus complexe cette fois. Nous allons utiliser la clause DISTINCT
et compter le nombre de lignes dans la colonne nommée « continent »:
1
|
SELECT COUNT( DISTINCT continent ) FROM countries;
|
Le résultat de cette requête sera un peu différent :
1
2 3 |
COUNT
——- 5 |
Dans cette requête, le résultat n’est que de cinq car la fonction DISTINCT
supprime toutes les valeurs en double trouvées dans les enregistrements.
COUNT GROUP BY
Notre prochain exemple fera appel à la clause GROUP BY
. Nous allons compter le nombre de lignes pour chaque valeur trouvée dans la colonne nommée « code » :
1
2 3 |
SELECT code, COUNT(code)
FROM countries GROUP BY code; |
Voici le résultat de notre requête :
1
2 3 4 5 6 7 |
code | COUNT
——+——- NA | 4 SA | 2 AF | 1 AS | 4 EU | 3 |
Conclusion
Lorsque vous interrogez une table PostgreSQL, il y a des moments où vous avez besoin du nombre d’enregistrements qui correspondent à certaines conditions plus que vous avez besoin des enregistrements réels eux-mêmes. L’utilisation conjointe des fonctions COUNT et SELECT de Postgres peut vous aider à obtenir les résultats dont vous avez besoin. Dans cet article, nous avons fourni plusieurs exemples qui utilisent l’instruction PostgreSQL SELECT
en conjonction avec la fonction COUNT()
. Si vous suivez ces exemples, vous serez prêt à créer des requêtes similaires pour vos propres tables PostgreSQL.