Heim >Datenbank >MySQL-Tutorial >Wie zähle ich Datensätze innerhalb von Gruppen und erhalte die Gesamtzahl in SQL?

Wie zähle ich Datensätze innerhalb von Gruppen und erhalte die Gesamtzahl in SQL?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2025-01-18 23:57:11314Durchsuche

How to Count Records within Groups and Get the Total Count in SQL?

Datensatzanzahl nach GROUP BY in SQL

Bei 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:

<code class="language-sql">SELECT `town`, COUNT(`town`)
FROM `user`
GROUP BY `town`;</code>

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:

<code class="language-sql">DECLARE @numOfUsers INT;
SET @numOfUsers = (SELECT COUNT(*) FROM `user`);</code>

Sie können dann verschiedene Städte und die zuvor definierten Variablen auswählen:

<code class="language-sql">SELECT DISTINCT `town`, @numOfUsers FROM `user`;</code>

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!

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