理解 SQL 的多列 GROUP BY
SQL GROUP BY
子句是数据聚合的强大工具。虽然在单列中使用 GROUP BY
很简单,但在多列中使用它需要更深入的理解。
当您使用 GROUP BY x, y
时,x
和 y
值的组合定义分组标准。 数据被分组为 x
和 y
值的独特组合,与仅基于 GROUP BY x
分组的 x
不同。
让我们用“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 |
GROUP BY Subject
查询产生:
Subject | Count |
---|---|
ITB001 | 5 |
MKB114 | 2 |
显示 ITB001 的 5 个条目和 MKB114 的 2 个条目。
但是,GROUP BY Subject, Semester
查询会生成:
Subject | Semester | Count |
---|---|---|
ITB001 | 1 | 3 |
ITB001 | 2 | 2 |
MKB114 | 1 | 2 |
这里,分组是基于Subject
和Semester
两者的。 我们看到第 1 学期有 3 名 ITB001 学员,第 2 学期有 2 名学员,第 1 学期有 2 名 MKB114 学员。
本质上,具有多列的GROUP BY
允许按多个条件同时分组,揭示数据分布和不同属性之间的关系。
以上是多列 GROUP BY 在 SQL 中如何工作?的详细内容。更多信息请关注PHP中文网其他相关文章!