一、常用聚合函数
SUM 返回选取结果集中所有值的总和;
COUNT 返回选取的结果集中所有记录行的数目;
COUNT_BIG 同COUNT函数,只是返回结果为bigint数据类型;
MAX 返回结果集中的最大值;
MIN 返回结果集中的最小值;
AVG 返回结果集中所有值的平均值;
STDEV 返回结果集中所有值的标准偏差;
STDEVP 返回结果集中所有值的总体标准偏差;
VAR 返回结果集中所有值的方差;
VARP 返回结果集中所有值的总体方差;
二、执行机理
执行SELECT语句显示由聚合函数计算的值时,DBMS的执行步骤:
1、生成一个虚拟中间表,代表SELECT语句的FROM 子句中的表;
2、如果有WHERE 子句,就对中间表的每行对其搜索条件求值,只保留满足搜索条件的记录;
3、使用上一步中得到的中间表中的值,来计算SELECT子句中的聚合函数的值;
4、将聚合函数计算得到的值座位单个结果表的列 显示。
因此,可以认为SELECT子句中的聚合函数的作用是指导DBMS统计数据,产生单行的计算结果。正因为如此,下面这行语句是非法的:
SELECT Name,COUNT(*) FROM MyTable
也就是说,如果不是分组查询,在SELECT子句中,同时出现列名和使用聚合函数是非法的,二者矛盾。