聚合函数从一组输入值中计算出一个单一的结果值。聚合函数的特殊语法考虑在第 1.3.5 节中解释。更多介绍信息请参阅
PostgreSQL 教程。
表 4.30. 聚合函数
| 函数 | 描述 | 说明 |
|---|
AVG(expression) | 所有输入值的平均值(算术平均) |
可以对下列数据类型求平均值:smallint、integer、bigint、real、double
precision、numeric、interval。对于任何整数类型输入,结果的类型是 numeric;对于浮点输入是
double precision;否则与输入数据类型相同。
|
count(*) | 输入值的数目 | 返回值的类型是 bigint。 |
count(expression) | 统计expression的值不为 NULL 的输入值的个数。
| 返回值的类型是 bigint。 |
max(expression) | expression 在所有输入值中的最大值 | 可用于所有数字、字符串和日期/时间类型。结果的类型与输入表达式相同。
|
min(expression) | expression 在所有输入值中的最小值 | 可用于所有数字、字符串和日期/时间类型。结果的类型与输入表达式相同。
|
stddev(expression) | 输入值的样本标准差 |
可以对下列数据类型求标准差:smallint、integer、bigint、real、double
precision、numeric。对于浮点输入,结果的类型是
double precision;否则是
numeric。
|
sum(expression) | expression 在所有输入值上的总和 | 可以对下列数据类型求和:smallint、integer、bigint、real、double
precision、numeric、interval。对于 smallint 或 integer 输入,结果的类型是 bigint;对于 bigint
输入是 numeric;对于浮点输入是 double precision;否则与输入数据类型相同。
|
variance(expression) | 输入值的样本方差 |
方差是标准差的平方。支持的数据类型和结果类型与标准差的相同。
|
应当注意,除了 COUNT 之外,这些函数在没有选中任何行时都返回 NULL。特别地,没有行时 SUM 返回 NULL,而不是人们可能预期的零。必要时可以使用 COALESCE
函数把 NULL 替换为零。