MySql Group By implementiert die Gruppierung mehrerer Felder

MySql Group By implementiert die Gruppierung mehrerer Felder

Bei täglichen Entwicklungsaufgaben verwenden wir häufig die GROUP BY-Gruppierung von MySQL, um statistische Daten basierend auf den Gruppierungsfeldern in der Datentabelle zu erhalten. Beispielsweise gibt es eine Kurswahltabelle für Studierende mit folgendem Aufbau:

Tabelle: Subject_Selection
Fach Semester Teilnehmer
---------------------------------
ITB001 1 Johannes
ITB001 1 Bob
ITB001 1 Micky
ITB001 2 Jenny
ITB001 2 Jakob
MKB114 1. Johannes
MKB114 1 Erika

Wir möchten zählen, wie viele Studenten sich für jeden Kurs angemeldet haben, und das folgende SQL anwenden:

SELECT Betreff, Anzahl(*)
VON Betreffauswahl
GROUP BY Betreff

Es wurden folgende Ergebnisse erzielt:

Anzahl der Themen
------------------------------
ITB001 5
MKB114 2

Denn in der Tabelle ist verzeichnet, dass 5 Studierende ITB001 und 2 Studierende MKB114 gewählt haben.

Die Gründe für dieses Ergebnis sind:

GROUP BY X bedeutet, alle Datensätze mit demselben X-Feldwert in einer Gruppe zusammenzufassen.

Was ist mit GROUP BY X, Y?

GROUP BY X, Y bedeutet, alle Datensätze mit gleichen X- und Y-Feldwerten in eine Gruppe zu packen.

Als nächstes müssen wir zählen, wie viele Personen jedes Semester welches Fach wählen, und das folgende SQL anwenden:

SELECT Fach, Semester, Anzahl(*)
VON Betreffauswahl
GROUP BY Fach, Semester

Das obige SQL bedeutet, die Daten in der Tabelle „Subject_Selection“ zu gruppieren, die Datensätze mit denselben Feldwerten für „Subject“ und „Semester“ in dieselbe Gruppe zu setzen und dann Aggregatfunktionen (COUNT, SUM, AVG usw.) auf die Daten in jeder Gruppe anzuwenden.

Das Ergebnis ist:

Fach Semesterzahl
------------------------------
ITB001 1 3
ITB001 2 2
MKB114 1 2

Aus den Datensätzen in der Tabelle können wir erkennen, dass das Gruppierungsergebnis korrekt ist. Es gibt 3 Studierende, die im ersten Semester ITB001 gewählt haben, 2 Studierende, die im zweiten Semester ITB001 gewählt haben,

Es gab auch zwei Studierende, die im ersten Semester MKB114 wählten, und niemand wählte im zweiten Semester MKB114.

So gibt es beispielsweise eine Bestelltabelle, in der alle bezahlten Bestellungen erfasst werden.

Tabelle: Bestellung

Ausgaben des Produktkäufers
---------------------------------
PD001 Todd 12.00
PD001 Todd 12.00
PD001 Todd 12.00
PD001 Lilie 12.00
PD001 Lilie 12.00
PD002 Todd 20,00
PD002 Todd 20,00

Nun wollen wir zählen, wie viel Geld jeder Benutzer für jedes Produkt ausgegeben hat. Führen Sie dazu den folgenden SQL-Befehl aus.

SELECT Produkt,Käufer, SUM(Ausgaben)
VON `Bestellung`
GRUPPE NACH Produkt, Käufer

Die erzielten Ergebnisse sind wie folgt:

Produktkäufer SUM
------------------------------
PD001 Todd 36.00
PD001 Lilie 24.00
PD002 Todd 40,00

Zusammenfassen:

Wenn Sie GROUP BY in MYSQL verwenden, um Daten in einer Tabelle zu gruppieren,

GROUP BY X bedeutet, alle Datensätze mit demselben X-Feldwert in einer Gruppe zusammenzufassen.

GROUP BY X, Y bedeutet, alle Datensätze mit gleichen X- und Y-Feldwerten in eine Gruppe zu packen.

Oben ist die MySql Group By-Methode zum Gruppieren mehrerer Felder, die ich Ihnen vorgestellt habe. Ich hoffe, sie wird Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • MySQL führt mehrere Datenzeilen basierend auf der Funktion group_concat() zusammen
  • Beispiel der MySQL-Group_Concat-Methode zum Schreiben von Gruppenfeldern in eine Zeile
  • MySQL-Gruppe durch Gruppieren mehrerer Felder
  • So führen Sie mehrere Daten eines Felds zusammen und zeigen sie nach der Gruppierung in MySQL an

<<:  Centos7.5 Konfiguration Java-Umgebung Installation Tomcat Erklärung

>>:  So zeichnen Sie in CocosCreator ein cooles Radardiagramm

Artikel empfehlen

Eine kurze Diskussion über das Funktionswissen von Python

Inhaltsverzeichnis Zwei Hauptkategorien von Funkt...

Anwendung von Ankerpunkten in HTML

Ankerpunkt festlegen <a name="nach oben&qu...

Funktionsüberladung in TypeScript

Inhaltsverzeichnis 1. Funktionssignatur 2. Funkti...

Installations-Tutorial zur MySQL 5.7.17 Zip-Paketversion unter Win10

Das Installationstutorial für mysql5.7.17 wird Ih...

Nodejs-Plugin und Nutzungsübersicht

Die Betriebsumgebung dieses Tutorials: Windows 7-...

So stellen Sie verschiedene Mausformen dar

<a href = "http: //" style = "c...

Vue CodeMirror realisiert den Effekt des Online-Code-Compilers

Vorwort Wenn wir den Effekt der Online-Codekompil...

So erstellen Sie eine PHP+Nginx+Swoole+MySQL+Redis-Umgebung mit Docker

Betriebssystem: Alibaba Cloud ESC-Instanz centos7...

So erhalten Sie die dynamische Anzahl der verbleibenden Wörter im Textbereich

Ich bin bei der Arbeit auf einen Fall gestoßen, ü...

Installations- und Nutzungsprotokoll von VMware ESXi (mit Download)

Inhaltsverzeichnis 1. Installieren Sie ESXi 2. ES...

Vue.js-Framework implementiert Warenkorbfunktion

In diesem Artikel wird der spezifische Code des V...