Maison >base de données >tutoriel mysql >Comment compter les enregistrements après avoir regroupé des données avec SQL ?

Comment compter les enregistrements après avoir regroupé des données avec SQL ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2025-01-18 23:52:09929parcourir

How to Count Records After Grouping Data with SQL?

Statistiques du nombre d'enregistrements après regroupement SQL

Lorsque vous utilisez l'instruction GROUP BY avec la clause SELECT, vous pouvez utiliser une fonction d'agrégation pour compter le nombre d'enregistrements dans chaque groupe. Ceci est utile pour obtenir des statistiques récapitulatives, telles que le nombre total d'utilisateurs par ville.

Utilisez GROUP BY pour compter

Pour compter les enregistrements après le regroupement, utilisez la GROUP BYfonction d'agrégation dans la clause COUNT(*) :

<code class="language-sql">SELECT `town`, COUNT(*)
FROM `user`
GROUP BY `town`;</code>

Cette requête renverra une liste de villes et le nombre total d'utilisateurs dans chaque ville.

Autres fonctions d'agrégation

En plus de COUNT, vous pouvez également utiliser d'autres fonctions d'agrégation avec GROUP BY, par exemple :

  • MAX : Renvoie la valeur maximale du champ dans chaque groupe.
  • MIN : Renvoie la valeur minimale du champ dans chaque groupe.
  • COUNT DISTINCT : renvoie le nombre de valeurs uniques pour le champ dans chaque groupe.

Exemple

Considérons un tableau nommé user qui contient une colonne nommée town. La requête suivante compte le nombre total d'utilisateurs dans chaque ville :

<code class="language-sql">SELECT `town`, COUNT(*) AS `total_users`
FROM `user`
GROUP BY `town`;</code>

Cette requête produira les résultats suivants :

城镇 用户总数
哥本哈根 58
纽约 58
雅典 58

Utilisez des variables pour stocker le nombre total

Vous pouvez également déclarer une variable pour stocker le nombre total d'utilisateurs, puis choisir la valeur de cette variable :

<code class="language-sql">DECLARE @numOfUsers INT;
SET @numOfUsers = (SELECT COUNT(*) FROM `user`);

SELECT DISTINCT `town`, @numOfUsers AS `total_users`
FROM `user`;</code>

Cette approche offre une flexibilité lors de l'utilisation de totaux dans des calculs ou des opérations ultérieurs.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn