GROUP BY
en SQLLors de l'utilisation de requêtes SQL GROUP BY
qui incluent SELECT
, il est souvent également nécessaire de calculer le nombre total d'enregistrements. Voici comment procéder directement dans une instruction SQL :
Pour calculer le nombre total d'enregistrements au sein de chaque groupe, utilisez simplement la fonction d'agrégation COUNT
avec GROUP BY
. Par exemple, disons que vous disposez d'une table d'utilisateurs et que vous souhaitez répertorier les villes uniques et le nombre d'utilisateurs dans chaque ville :
<code class="language-sql">SELECT `town`, COUNT(`town`) FROM `user` GROUP BY `town`;</code>
Cette requête renverra un tableau avec deux colonnes : town
, représentant les noms de villes uniques COUNT(town)
, affichant le nombre total d'utilisateurs dans chaque ville ;
De plus, vous pouvez utiliser d'autres fonctions d'agrégation avec GROUP BY
, telles que MAX
, MIN
, COUNT DISTINCT
, etc.
Mise à jour :
Vous souhaiterez peut-être également récupérer le nombre total d'utilisateurs dans toutes les villes. Pour cela, vous pouvez définir une variable à l'aide de la fonction COUNT
agrégat :
<code class="language-sql">DECLARE @numOfUsers INT; SET @numOfUsers = (SELECT COUNT(*) FROM `user`);</code>
Vous pouvez ensuite sélectionner différentes communes et les variables préalablement définies :
<code class="language-sql">SELECT DISTINCT `town`, @numOfUsers FROM `user`;</code>
Cela fournira une liste de villes ainsi que le nombre total d'utilisateurs.
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!