我有一张表,其中包括ID,日期,值(温度)和其他一些东西。我的表看起来像这样:
+-----+--------------+------------+
| ID | temperature | Date |
+-----+--------------+------------+
| 1 | 26.3 | 2012-02-05 |
| 2 | 27.8 | 2012-02-06 |
| 3 | 24.6 | 2012-02-07 |
| 4 | 29.6 | 2012-02-08 |
+-----+--------------+------------+
我想每10天执行一次汇总查询,例如sum和mean。
我想知道psql中是否可以使用它?
答案 0 :(得分:8)
select
"date",
temperature,
avg(temperature) over(order by "date" rows 10 preceding) mean
from t
order by "date"
答案 1 :(得分:2)
select id,
temperature,
sum(temperature) over (partition by null order by date rows between 10 preceding and current row)
from that_table;
它可能不完全是您想要的,因为它将在最后10行中进行移动总和,这与过去10天不一定相同。