适用于:SQL Server
Azure SQL 数据库
Azure SQL 托管实例
Azure Synapse Analytics
Microsoft Fabric中的SQL分析端点
Microsoft Fabric中的仓库
Microsoft Fabric中的SQL数据库
Microsoft SQL 数据库引擎中的聚合函数对一组值执行计算,并返回单个值。
- 除聚合函数外
COUNT(*),聚合函数忽略NULL值。 - 聚合函数通常与该语句一起使用
GROUP BYSELECT。 - 除非另有说明,聚合函数是确定性的。 换言之,每次使用一组特定的输入值调用聚合函数时,它们所返回的值都是相同的。 例如,
APPROX_MEDIAN和APPROX_QUANTILE都不是确定性的。 有关函数确定性的详细信息,请参阅 确定性函数和不确定函数 。 -
OVER 子句可以跟随所有聚合函数,除了
STRING_AGG、GROUPING或GROUPING_ID函数。 - 聚合函数仅作为表达式出现在语句的选择列表中
SELECT(无论是子查询还是外部查询),或在子HAVING句中。
Microsoft SQL 数据库引擎 在部分或所有平台上提供以下聚合功能。 请参阅各语法条目以了解适用的平台。
- ANY_VALUE - 从组中的任意行中选取一个值并返回。
- APPROX_COUNT_DISTINCT - 使用内存效率高的算法返回不同非空值的近似计数。
- APPROX_MEDIAN - 返回一组值的近似中位数值。
- APPROX_PERCENTILE_CONT - 通过连续插值返回近似百分位数值。
- APPROX_PERCENTILE_DISC - 返回从实际数据值中选出的近似百分位数值。
- APPROX_QUANTILE - 返回指定分位数位置的近似分位数值。
- AVG - 计算组内各数值的平均值。
- CHECKSUM_AGG - 返回对组中各值计算的校验和值。
- COUNT - 返回组中的行数或非空值。
- COUNT_BIG - 返回组中的行数或非空值,作为 双倍型 类型。
- 分组 ——表示结果行中的某列值是否通过分组操作被聚合。
- GROUPING_ID - 返回一个位掩码,识别哪些列被聚合在分组集中。
- PRODUCT - 返回组中非零值的乘积。
- MAX - 返回组中的最大值。
- 中位数 - 返回组中各值的中位数值。
- MIN - 返回组中的最小值。
- PERCENTILE_CONT - 根据列值的连续分布计算百分位数。
- PERCENTILE_DISC - 计算整个行集或行集不同分区内排序值的特定百分位数。
- 分位数 - 返回对应组内指定分位数的值。
- STDEV - 返回一组中数值的样本标准差。
- STDEVP - 返回群体中数值的总体标准差。
- STRING_AGG - 将多行字符串值串接到单一字符串中。
- SUM - 返回组中各值的总和。
- VAR - 返回组中各值的样本方差。
- VARP ——返回组中各值的总体方差。