Le comptage des enregistrements après une opération de regroupement est également utile lors de l'utilisation de requêtes SQL GROUP BY
avec la clause SELECT
. De cette façon, vous pouvez facilement obtenir des statistiques agrégées pour chaque groupe.
Pour compter les enregistrements groupés, incluez simplement la fonction d'agrégation SELECT
dans l'instruction COUNT()
, ainsi que la colonne sur laquelle vous souhaitez regrouper. Par exemple, si vous avez une table appelée « utilisateurs » et que vous souhaitez sélectionner différentes villes et compter le nombre total d'utilisateurs dans chaque ville :
<code class="language-sql">SELECT `town`, COUNT(*) AS `num_users` FROM `user` GROUP BY `town`;</code>
Cette requête renverra un ensemble de résultats avec une colonne pour chaque ville et une colonne pour le nombre total d'utilisateurs dans cette ville.
Si vous souhaitez également afficher une colonne contenant le nombre total d'utilisateurs pour toutes les lignes, vous pouvez utiliser une sous-requête pour calculer cette valeur et la joindre à l'ensemble de résultats groupés. Vous pouvez également utiliser une variable spécifique à la base de données pour stocker le nombre total, puis le référencer dans la requête principale.
Par exemple, dans MySQL, vous pouvez utiliser la requête suivante pour inclure la colonne du nombre total :
<code class="language-sql">SELECT `town`, COUNT(*) AS `num_users`, (SELECT COUNT(*) FROM `user`) AS `total_users` FROM `user` GROUP BY `town`;</code>
Vous pouvez facilement obtenir le niveau de groupe et le nombre total dans une requête SQL en utilisant des fonctions d'agrégation et des sous-requêtes.
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!