我有一台安装了OpenShift和Node.js的服务器,我想停止使用OpenShift并返回手动select *
from (
select
date, value, category,
avg(value) over (
partition by category
order by date
rows between 2 preceding and current row
) as average
from (
select date::date as date, coalesce(value, 0) as value, category
from
t
right join
( -- computed table with all the possible dates x categories
(
select distinct category
from t
) c
cross join
generate_series (
(select min(date) - 2 from t),
(select max(date) from t),
'1 day'
) gs(date)
) s using(category, date)
) s
) s
where date >= (select min(date) from t)
order by date, category
;
date | value | category | average
------------+-------+----------+------------------------
2016-01-01 | 6 | A | 2.0000000000000000
2016-01-01 | 4 | B | 1.3333333333333333
2016-01-01 | 16 | C | 5.3333333333333333
2016-01-01 | 0 | D | 0.00000000000000000000
2016-01-02 | 7 | A | 4.3333333333333333
2016-01-02 | 0 | B | 1.3333333333333333
2016-01-02 | 8 | C | 8.0000000000000000
2016-01-02 | 5 | D | 1.6666666666666667
2016-01-03 | 4 | A | 5.6666666666666667
2016-01-03 | 0 | B | 1.3333333333333333
2016-01-03 | 0 | C | 8.0000000000000000
2016-01-03 | 0 | D | 1.6666666666666667
。
我该怎么做?