MySQL SELECT DISTINCT

Votre table peut contenir des valeurs en double dans une colonne et dans certains scénarios, vous pouvez exiger d’extraire uniquement des enregistrements uniques d’une table.
 
 
Pour supprimer les enregistrements en double pour les données extraites avec l’instruction SELECT, vous pouvez utiliser la clause DISTINCT. Voici la syntaxe de la clause DISTINCT:

SELECT DISTINCT colonne1, colonne2, ... FROM tableName;

 

Exemple:

Dans l’exemple suivant, on a utilisé la clause DISTINCT avec l’instruction SELECT pour récupérer uniquement les noms uniques de notre table « Personnes ». Cette table stocke les personnes avec leurs noms.
 

 
En utilisant la clause DISTINCT, nous n’obtenons que les noms uniques:

SELECT DISTINCT(Nom) FROM Personnes;


 
Liste des commandes MySQL

Utilisation de la clause WHERE avec DISTINCT

Dans cet exemple, nous avons utilisé la clause WHERE avec l’instruction SELECT/DISTINCT pour extraire uniquement les personnes pour lesquels l’age est supérieur ou égal à 30.

SELECT DISTINCT(Nom) FROM Personnes WHERE Age >= 30;


 

Utilisation de l’instruction DISTINCT avec les fonctions d’agrégation

Vous pouvez utiliser la clause DISTINCT avec une fonction d’agrégat, par exemple, SUM, AVG et COUNT, pour supprimer les lignes en double avant que les fonctions d’agrégat ne soient appliquées aux résultats.

Par exemple, pour compter les personnes pour lesquels l’age est supérieur ou égal à 30, utilisez la requête suivante:

SELECT COUNT(DISTINCT Nom) FROM Personnes WHERE Age >= 30;


Questions techniques sur MYSQL

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *