Maison >base de données >tutoriel mysql >Comment compter les occurrences de valeurs distinctes dans une table MySQL ?
Requête MySQL : Compter le nombre d'occurrences de valeurs différentes
Dans une table de base de données contenant un champ cible spécifique, il est souvent utile de déterminer les différentes valeurs de ce champ et le nombre de fois qu'elles apparaissent. Pour accomplir cette tâche dans MySQL, examinons un scénario spécifique :
Supposons que nous ayons une table nommée tablename
qui contient un champ nommé name
. Nous voulons trouver toutes les valeurs name
distinctes, compter le nombre de fois où chaque name
apparaît et trier les résultats par ordre décroissant de nombre.
Exemples de données :
id | name |
---|---|
1 | Mark |
2 | Mike |
3 | Paul |
4 | Mike |
5 | Mike |
6 | John |
7 | Mark |
Résultats attendus :
name | count |
---|---|
Mike | 3 |
Mark | 2 |
Paul | 1 |
John | 1 |
Pour obtenir ce résultat on peut utiliser la requête MySQL suivante :
<code class="language-sql">SELECT name, COUNT(*) AS count FROM tablename GROUP BY name ORDER BY count DESC;</code>
Explication :
SELECT name, COUNT(*) AS count
: Cette partie de la requête sélectionne les champs name
et compte les occurrences de chaque name
distinct. COUNT(*)
La fonction renvoie le nombre de toutes les lignes du groupe. FROM tablename
: Ceci spécifie la table à partir de laquelle les données doivent être récupérées. GROUP BY name
: Cette clause regroupe les résultats par champ name
, nous permettant de compter le nombre d'occurrences de chaque name
différent. ORDER BY count DESC
: Enfin, cette clause trie les résultats par ordre décroissant en fonction du nombre d'occurrences. En exécutant cette requête, nous obtenons le résultat souhaité répertoriant les différentes name
valeurs avec leurs décomptes respectifs, triés par décompte par ordre décroissant.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!