Postgres- 每 n 天分组一次

阿克拉姆·卡迈勒·卡萨斯

我可以在 postgres 中每 n 天分组一次吗

如果我们有:

date       |  price
2018-01-01 |  10
2018-01-02 |  11
2018-01-03 |  10.5
.....

类似于每 10 天分组并获取价格列的平均值

麦克风

这个怎么样?无论间隔如何,它都会对连续 10 天的时段进行存储。

CREATE TABLE date (
  date  DATE             NOT NULL,
  price DOUBLE PRECISION NOT NULL
);

INSERT INTO date (date, price)
SELECT (now()::DATE) + s.i,
  s.i :: DOUBLE PRECISION
FROM generate_series(0, 1000) AS s(i);

SELECT ((extract(EPOCH FROM date) / (60 * 60 * 24)) :: BIGINT) / 10
    , avg(price) AS average_price
FROM date
GROUP BY 1
ORDER BY 1;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章