在 MySQL 中,我们可以使用 GROUP BY 子句来对查询结果进行分组。GROUP BY 语句通常与聚合函数一起使用,如 COUNT()、 SUM()、 AVG() 等等,以便我们可以为整个分组应用聚合函数。
下面我们以一个示例来说明如何在 MySQL 中创建分组。
比如我们有一个 score 表,存储学生的成绩信息,包括学生姓名和成绩,我们想要将分数相同的学生分在一组,并计算每个分组的学生人数。可以使用如下的 SQL 语句:
SELECT score, COUNT(*) AS num
FROM score
GROUP BY score;
以上 SQL 查询语句将会按照 score 字段的值进行分组,并使用 COUNT(*) 函数计算每个分数组的学生人数。
注意,在 SELECT 子句中的列必须出现在 GROUP BY 子句中,因为 GROUP BY 确定了唯一的分组条件。如果在 SELECT 子句中使用的列与分组条件不一致,则会导致错误的结果。
另外,分组过程会对表进行聚合操作,会产生临时表,所以效率上比较慢,需要注意。