一、group by用法
“group by”就是对数据进行分组,然后针对分组后的数据进行处理。可以按单个字段进行分组,也可以按多个字段进行分组。
如:
select sum(score) as sum_score from user group by name;
select sum(score) as sum_score from user group by name,sex;
二、group by 和 having
1、having必须和group by一起用,且在group by后面,但是group可以单独用来分组
2、group by、having、order by的使用顺序:group by 、having、order by
SELECT *|字段列表 [as 别名] FROM 表名 [WHERE 子句] [GROUP BY 子句][HAVING 子句][ORDER BY 子句][LIMIT 子句]
3、having是在分好组后找出特定的分组,通常是以筛选聚合函数的结果,如sum(a) > 100等
4、分组函数常用到的聚合函数:
MIN 最小值:分组之后对组内某字段求最小值
MAX 最大值:分组之后对组内某字段求最大值
SUM 求和:分组之后对组内某字段求和
AVG 求平均:分组之后对组内某字段求平均值
COUNT 计数::分组之后对组内某字段计数