Heim >Datenbank >MySQL-Tutorial >Wie berechnet man die SUMME gruppierter COUNTs in SQL?

Wie berechnet man die SUMME gruppierter COUNTs in SQL?

Barbara Streisand
Barbara StreisandOriginal
2024-12-23 01:09:18989Durchsuche

How to Calculate the SUM of Grouped COUNTs in SQL?

Berechnen der SUMME der gruppierten ANZAHL in SQL-Abfragen

In SQL ist das Gruppieren von Daten für die Zusammenfassung und Analyse großer Datensätze unerlässlich. Beim Arbeiten mit gruppierten Daten kann es sinnvoll sein, auch die Summe der gruppierten Werte zu berechnen. Dieser Artikel zeigt anhand einer Beispieltabelle und einer praktischen SQL-Abfrage, wie dies erreicht wird.

Stellen Sie sich eine Tabelle mit zwei Feldern vor: ID und Name. Jeder Datensatz stellt eine Person dar und mehrere Datensätze können denselben Namen haben. Wir möchten die Daten nach Namen gruppieren und die Anzahl der Datensätze in jeder Gruppe zählen. Zusätzlich möchten wir am Ende eine Zeile hinzufügen, um die Gesamtzahl aller Datensätze anzuzeigen.

Um dies zu erreichen, können wir die folgende SQL-Abfrage verwenden:

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

Abfrageaufschlüsselung:

  1. SELECT-Klausel: Wählt das Namensfeld aus und berechnet die Anzahl der Datensätze darin jede Gruppe (COUNT(name)) als Anzahl.
  2. SUM() OVER()-Klausel: Berechnet die Summe der Zählwerte für alle Gruppen mithilfe der SUM()-Funktion mit dem OVER () Fensterfunktion. Dadurch wird eine neue Spalte namens „total_count“ erstellt.
  3. GROUP BY-Klausel:Gruppiert die Ergebnisse nach dem Namensfeld.

Ergebnisse:

Die Abfrage gibt Folgendes zurück Ergebnisse:

Charlie
Name Anzahl Gesamt Anzahl
Alpha 1 6
Beta 3 6
2 6
Name Count Total Count
Alpha 1 6
Beta 3 6
Charlie 2 6
SUM 6 6
SUMME

6 6
Die Die SUM-Zeile am Ende zeigt die Gesamtzahl aller Datensätze an, in diesem Beispiel 6.

Das obige ist der detaillierte Inhalt vonWie berechnet man die SUMME gruppierter COUNTs in SQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn