Compter des valeurs distinctes dans MySQL

Preet Sanghavi 20 janvier 2022
Compter des valeurs distinctes dans MySQL

Dans ce tutoriel, nous allons présenter différentes méthodes pour compter des valeurs distinctes.

La méthode COUNT() de MySQL donne le nombre total de lignes de la table en sortie. Cependant, dans cet article, nous sommes intéressés à comprendre comment calculer ou compter le nombre d’occurrences distinctes d’une expression. La syntaxe pour effectuer cette opération peut être écrite sous la forme COUNT (expression DISTINCT). Cette commande nous donne le nombre total de valeurs non nulles distinctes en tant que sortie de l’expression particulière.

Voyons cette méthode en action.

Cependant, avant de commencer, nous créons un jeu de données factice avec lequel travailler. Ici, nous créons un tableau, student_details, avec quelques lignes dedans.

-- create the table student_details
CREATE TABLE student_details(
  stu_id int,
  stu_firstName varchar(255) DEFAULT NULL,
  stu_lastName varchar(255) DEFAULT NULL,
  primary key(stu_id)
);
-- insert rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName) 
 VALUES(1,"Preet","Sanghavi"),
 (2,"Rich","John"),
 (3,"Veron","Brow"),
 (4,"Geo","Jos"),
 (5,"Hash","Shah"),
 (6,"Sachin","Parker"),
 (7,"David","Miller");

La requête ci-dessus crée un tableau avec des lignes contenant le prénom et le nom de l’étudiant. Afin de visualiser les entrées dans les données, nous utilisons le code suivant :

SELECT * FROM student_details;

Le code ci-dessus donnerait la sortie suivante.

stu_id	stu_firstName	stu_lastName
1	      Preet	        Sanghavi
2	      Rich	        John
3	      Veron	        Brow
4	      Geo	        Jos
5	      Hash	        Shah
6	      Sachin	    Parker
7	      David	        Miller

Compter des valeurs distinctes dans MySQL

La fonction MySQL COUNT (DISTINCT expression), comme indiqué ci-dessus, nous donne le nombre de lignes avec des valeurs uniques non nulles. Pour compter le nombre d’élèves aux prénoms uniques, nous utilisons le code suivant.

-- Count the number of students with different first names
SELECT COUNT(DISTINCT stu_firstName) as distinct_first_names FROM student_details ;

Le code ci-dessus compte le nombre de prénoms distincts issus de la table student_details. La sortie du code ci-dessus est la suivante.

distinct_first_names
7

Ainsi, nous pouvons voir que les noms uniques (Preet, Rich, Veron, Geo, Hash, Sachin et David) ont été comptés pour générer le décompte final de 7.

Remarque : dans le code ci-dessus, nous utilisons l’alias distinct_first_names avec comme mot-clé AS dans MySQL.

Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub