聚合函数的概念
聚合函数对一组值计算后返回单个值。 除了count(统计项数)函数以外,其他的聚合函数在计算式都会忽略空值(null)。所有的聚合函数均为确定性函数。即任何时候使用一组相同的输入值调用聚合函数执行后的返回值都是相同的,无二义性。T-SQL提供的聚合函数一共有13个之多。
聚合函数通常会在下列场合使用:
1、select语句的选择列表,包括子查询和外部查询。
2、使用compute或compute by产生汇总列时。
3、having子句对分组的数据记录进行条件筛选。
聚合函数:
聚合函数:
1、平均值AVG
AVG函数用于计算精确型或近似型数据类型的平均值,bit类型除外,忽略null值。AVG函数计算时将计算一组数的总和,然后除以为null的个数,得到平均值。
语法结构:
avg( [ all | distinct ] expression )
2、最小值MIN
MIN函数用于计算最小值,MIN函数可以适用于numeric、char、varchar或datetime、money或smallmoney列,但不能用于bit列。不允许使用聚合函数和子查询,忽略null值。
语法结构:
min( [ all | distinct ] expression )
3、最大值MAX
MAX函数用于计算最大值,忽略null值。max函数可以使用于numeric、char、varchar、money、smallmoney、或datetime列,但不能用于bit列。不允许使用聚合函数和子查询。
语法结构:
MAX ( [ all | distinct ] expression )
4、求和值SUM
SUM函数用于求和,只能用于精确或近似数字类型列(bit类型除外),忽略null值,不允许使用聚合函数和子查询。
语法结构:
SUM ( [ all | distinct ] expression )
5、统计项数值count(count_big)
count函数用于计算满足条件的数据项数,返回int数据类型的值。
语法结构:
count( {[[ all | distinct] expression ] | * } )
6、计算标准偏差值STDEV
语法结构:
STDEV( [all | distinct ] expression )
7、计算方差VAR
VAR函数用于计算指定表达式中所有值的方差。
语法结构:
VAR( [ all | distinct ] expression )
8、CHECKSUM_AGG
返回组中各值的校验和。 将忽略 Null 值。CHECKSUM_AGG 可用于检测表中的更改。表中行的顺序不影响 CHECKSUM_AGG 的结果。此外,CHECKSUM_AGG 函数还可与 DISTINCT 关键字和 GROUP BY 子句一起使用。如果表达式列表中的某个值发生更改,则列表的校验和通常也会更改。但只在极少数情况下,校验值会保持不变。
语法如下:
CHECKSUM_AGG ( [ ALL | DISTINCT ] expression )
9、COUNT_BIG
返回组中的项数。 COUNT_BIG 的用法与 COUNT 函数类似。 两个函数唯一的差别是它们的返回值。 COUNT_BIG 始终返回 bigint 数据类型值。 COUNT 始终返回 int 数据类型值。
10、STDEVP
11、GROUPING
12、GROUPING_ID
13、VARP