admin

重新采样时间序列数据

sql

我有一个带有以毫秒为单位的“时间序列”列的表,我想对时间序列进行重新采样并在组上应用均值。如何在Postgres中实现它?

“重新采样”是指在一秒钟或一分钟内汇总所有时间戳。一秒钟或一分钟以内的所有行都组成一个组。

表结构

date    x    y    z

阅读 196

收藏
2021-06-07

共1个答案

admin

使用
date_trunc()
截断时间戳给定的时间单位,而GROUP BY该表达式:

SELECT date_trunc('minute', date) AS date_truncated_to_minute
      ,avg(x) AS avg_x
      ,avg(y) AS avg_y
      ,avg(z) AS avg_z
FROM   tbl
GROUP  BY 1;

假设您误导性的名称date列实际上是type timestamp

2021-06-07