mysql_聚合函数

一. 聚合函数介绍
1.聚合函数也叫做分组函数或者聚集函数,它是对一组数据进行汇总的函数,输入的是一组数据的集合,输出的是单个值。
2.聚合函数作用于一组数据,并对一组数据返回一个值。

二.聚合函数类型
AVG() 平均值
SUM() 求和
MAX() 最大值
MIN() 最小值
COUNT() 计数
聚合函数不能嵌套调用。比如不能出现类似“AVG(SUM(字段名称))”形式的调用。

三.GROUP BY 的使用
可以使用GROUP BY子句将表中的数据分成若干组
结论:
1. SELECT中出现的非组函数的字段必须声明在GROUP BY 中。
2. GROUP BY 声明在FROM后面、WHERE后面,ORDER BY 前面、LIMIT前面

三. HAVING的使用 (作用:用来过滤数据的)
WHERE 与 HAVING 的对比
1. 从适用范围上来讲,HAVING的适用范围更广。
2. 如果过滤条件中没有聚合函数:这种情况下,WHERE的执行效率要高于HAVING

四.SQL底层执行原理
2.SQL语句的执行过程
FROM 表1,表2-> ON -> (LEFT/RIGNT JOIN) -> WHERE -> GROUP BY -> HAVING -> SELECT -> DISTINCT -> ORDER BY -> LIMIT

五.练习