Maison >base de données >tutoriel mysql >Comment calculer la SOMME des COUNT groupés en SQL ?

Comment calculer la SOMME des COUNT groupés en SQL ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-23 01:09:18990parcourir

How to Calculate the SUM of Grouped COUNTs in SQL?

Calcul de la SOMME du COUNT groupé dans les requêtes SQL

En SQL, le regroupement des données est essentiel pour résumer et analyser de grands ensembles de données. Lorsque vous travaillez avec des données groupées, il peut être utile de calculer également la somme des valeurs groupées. Cet article montre comment y parvenir à l'aide d'un exemple de table et d'une requête SQL pratique.

Considérons une table avec deux champs : ID et Nom. Chaque enregistrement représente un individu et plusieurs enregistrements peuvent porter le même nom. Nous voulons regrouper les données par nom et compter le nombre d'enregistrements dans chaque groupe. De plus, nous souhaitons ajouter une ligne à la fin pour afficher le nombre total de tous les enregistrements.

Pour y parvenir, nous pouvons utiliser la requête SQL suivante :

SELECT name, COUNT(name) AS count, SUM(COUNT(name)) OVER() AS total_count
FROM Table
GROUP BY name;

Répartition de la requête :

  1. Clause SELECT : Sélectionne le champ de nom et calcule le nombre d'enregistrements dans chaque groupe (COUNT(nom)) comme nombre.
  2. Clause SUM() OVER() : Calcule la somme des valeurs de comptage pour tous les groupes à l'aide de la fonction SUM() avec OVER () fonction de fenêtre. Cela crée une nouvelle colonne appelée total_count.
  3. Clause GROUP BY : Regroupe les résultats par champ de nom.

Résultats :

La requête renvoie ce qui suit résultats :

Charlie
Nom Nombre Total Nombre
Alpha 1 6
Bêta 3 6
2 6
Name Count Total Count
Alpha 1 6
Beta 3 6
Charlie 2 6
SUM 6 6
SOMME

6 6
Le La ligne SUM à la fin affiche le nombre total de tous les enregistrements, qui est 6 dans cet exemple.

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