已结束支持的版本: 6.3
历史版本。 PostgreSQL 6.3 已结束支持。 请参阅 当前版本手册.
13.9. 使用聚合函数
与大多数其他查询语言一样,PostgreSQL 支持聚合函数。当前 Postgres 聚合函数的实现有一些限制。具体来说,虽然有计算
count、sum、avg(平均值)、max(最大值)和
min(最小值)等函数(在一组实例上)的聚合,聚合只能出现在查询的选择列表中,而不能直接出现在限定条件(where 子句)中。例如,
SELECT max(temp_lo) FROM weather;
是允许的,而
SELECT city FROM weather WHERE temp_lo = max(temp_lo);
则不行。不过,正如常见的情况,查询可以改写以达到预期的结果;这里使用子查询:
SELECT city FROM weather WHERE temp_lo = (SELECT max(temp_lo) FROM weather);
聚合还可以带 group by 子句:
SELECT city, max(temp_lo)
FROM weather
GROUP BY city;