SQLs GROUP BY
mit mehreren Spalten: Eine detaillierte Erklärung
Die SQL-Klausel GROUP BY
gruppiert Zeilen mit gemeinsamen Werten effizient und ermöglicht so Aggregatfunktionsberechnungen für diese Gruppen. Während die einspaltige Gruppierung unkompliziert ist, erhöht die mehrspaltige Gruppierung die Komplexität und Leistungsfähigkeit.
Verstehen GROUP BY x, y
Die Syntax GROUP BY x, y
gruppiert Zeilen, in denen beide Spalten x
und y
identische Werte haben. Die Aggregatfunktionen in Ihrer Abfrage werden dann für jede einzelne Kombination von x
- und y
-Werten berechnet.
Anschauliches Beispiel
Sehen wir uns die Subject_Selection
-Tabelle an und verfolgen die Anwesenheit der Studierenden über Fächer und Semester hinweg:
Subject | Semester | Attendee |
---|---|---|
ITB001 | 1 | John |
ITB001 | 1 | Bob |
ITB001 | 1 | Mickey |
ITB001 | 2 | Jenny |
ITB001 | 2 | James |
MKB114 | 1 | John |
MKB114 | 1 | Erica |
Nur nach Betreff gruppieren
Die Abfrage:
<code class="language-sql">SELECT Subject, COUNT(*) FROM Subject_Selection GROUP BY Subject;</code>
Produziert:
Subject | Count |
---|---|
ITB001 | 5 |
MKB114 | 2 |
Dies fasst die Gesamtteilnahme pro Fach zusammen.
Gruppierung nach Fach und Semester
Betrachten Sie nun diese Abfrage:
<code class="language-sql">SELECT Subject, Semester, COUNT(*) FROM Subject_Selection GROUP BY Subject, Semester;</code>
Das ergibt:
Subject | Semester | Count |
---|---|---|
ITB001 | 1 | 3 |
ITB001 | 2 | 2 |
MKB114 | 1 | 2 |
Dies bietet eine detailliertere Ansicht und zeigt die Anwesenheitszahlen für jedes Fach und Semesterkombination an. Beachten Sie, dass die Ergebnisse jetzt nach den eindeutigen Paarungen von Fach und Semester gruppiert sind. Dies zeigt die Leistungsfähigkeit der Verwendung mehrerer Spalten in der GROUP BY
-Klausel, um eine verfeinerte Datenaggregation zu erreichen.
Das obige ist der detaillierte Inhalt vonWie funktioniert die GROUP BY-Klausel von SQL mit mehreren Spalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!