GROUP BY
in SQLBei der Verwendung von SQL-GROUP BY
-Abfragen, die SELECT
enthalten, ist es häufig auch erforderlich, die Gesamtzahl der Datensätze zu berechnen. So machen Sie das direkt in einer SQL-Anweisung:
Um die Gesamtzahl der Datensätze innerhalb jeder Gruppe zu berechnen, verwenden Sie einfach die Aggregatfunktion COUNT
mit GROUP BY
. Angenommen, Sie haben eine Benutzertabelle und möchten einzelne Städte und die Anzahl der Benutzer in jeder Stadt auflisten:
SELECT `town`, COUNT(`town`) FROM `user` GROUP BY `town`;
Diese Abfrage gibt eine Tabelle mit zwei Spalten zurück: town
, die eindeutige Stadtnamen darstellt; COUNT(town)
, die die Gesamtzahl der Benutzer in jeder Stadt anzeigt.
Darüber hinaus können Sie mit GROUP BY
auch andere Aggregatfunktionen verwenden, z. B. MAX
, MIN
, COUNT DISTINCT
usw.
Aktualisierung:
Möglicherweise möchten Sie auch die Gesamtzahl der Benutzer über alle Städte hinweg abrufen. Dazu können Sie mit der Aggregatfunktion COUNT
eine Variable definieren:
DECLARE @numOfUsers INT; SET @numOfUsers = (SELECT COUNT(*) FROM `user`);
Sie können dann verschiedene Städte und die zuvor definierten Variablen auswählen:
SELECT DISTINCT `town`, @numOfUsers FROM `user`;
Dadurch wird eine Liste der Städte zusammen mit der Gesamtzahl der Benutzer angezeigt.
Das obige ist der detaillierte Inhalt vonWie zähle ich Datensätze innerhalb von Gruppen und erhalte die Gesamtzahl in SQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!