Database
 sql >> Base de données >  >> RDS >> Database

Comment compter des valeurs distinctes en SQL

Problème :

Vous souhaitez compter le nombre de valeurs différentes non NULL dans une colonne donnée.

Exemple :

Notre base de données a une table nommée customer avec des données dans les colonnes suivantes :id , first_name , last_name , et city .

identifiant prénom nom_de_famille ville
1 Jean Williams Chicago
2 Tom Marron Austin
3 Lucie Miller Chicago
4 Élie Smith Dallas
5 Brian Jones Austin
6 Allan Davis NULL

Trouvons le nombre de différents (et non-NULL ) villes.

Solution :

SELECT COUNT( DISTINCT city) as cities
FROM customer;

Cette requête renvoie le nombre de villes où vivent les clients :

villes
3

Discussion :

Pour compter le nombre de valeurs différentes stockées dans une colonne donnée, il vous suffit de désigner la colonne que vous transmettez au COUNT fonctionner comme DISTINCT . Lorsqu'une colonne est donnée, COUNT renvoie le nombre de valeurs dans cette colonne. En combinant ceci avec DISTINCT renvoie uniquement le nombre de valeurs uniques (et non NULL).