SQL 的 GROUP BY
多列:詳細解釋
SQL GROUP BY
子句有效地對共用公用值的行進行分組,從而在這些群組上啟用聚合函數計算。雖然單列分組很簡單,但多列分組增加了一層複雜性和力量。
理解GROUP BY x, y
語法 GROUP BY x, y
將欄位 x
和 y
具有相同值的行進行分組。 然後,針對 x
和 y
值的每個不同組合計算查詢中的聚合函數。
說明性範例
讓我們檢查一下 Subject_Selection
表,追蹤各科目和學期的學生出勤:
Subject | Semester | Attendee |
---|---|---|
ITB001 | 1 | John |
ITB001 | 1 | Bob |
ITB001 | 1 | Mickey |
ITB001 | 2 | Jenny |
ITB001 | 2 | James |
MKB114 | 1 | John |
MKB114 | 1 | Erica |
只依主題分組
查詢:
<code class="language-sql">SELECT Subject, COUNT(*) FROM Subject_Selection GROUP BY Subject;</code>
產品:
Subject | Count |
---|---|
ITB001 | 5 |
MKB114 | 2 |
這總結了每個科目的總出席率。
依科目和學期分組
現在,考慮這個查詢:
<code class="language-sql">SELECT Subject, Semester, COUNT(*) FROM Subject_Selection GROUP BY Subject, Semester;</code>
這會產生:
Subject | Semester | Count |
---|---|---|
ITB001 | 1 | 3 |
ITB001 | 2 | 2 |
MKB114 | 1 | 2 |
這提供了更精細的視圖,顯示每個科目和學期組合的出勤計數。 請注意結果現在如何按主題和學期的獨特配對進行分組。 這展示了在 GROUP BY
子句中使用多列來實現更精細的資料聚合的強大功能。
以上是SQL 的 GROUP BY 子句如何處理多列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!