pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
与大多数其他查询语言一样,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;
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。