在我的Postgres数据库表中,我可以按日期顺序找到cap_cs137
的最后20个条目:
select cap_cs137 FROM capintec ORDER BY cap_date DESC LIMIT 20;
我也可以得到平均值:
select avg(cap_cs137) FROM capintec LIMIT 20;
然而,我如何将上述语句组合起来以按日期顺序获取最后20个条目的平均值?
我们有一个过时的RHEL 5.8服务器,支持Postgres 8.1.23,因此不允许使用WITH
查询。
SELECT avg(cap_cs137) FROM (SELECT cap_cs137 FROM capintec ORDER BY cap_date DESC LIMIT 20);
- zxq9WHERE
来限制子查询到给定的组。例如,要对“超级朋友”从some_table
中最新的20个条目的“stuff”进行平均值计算:SELECT avg(stuff) FROM (SELECT stuff FROM some_table WHERE group = "Super Friends" ORDER BY date DESC LIMIT 20);
。 - zxq9