小编dan*_*dan的帖子

postgresql 中的 SQL 每小时数据聚合

我是数据库的新手,所以我正在寻求您的帮助。

我有一个包含时间序列数据的表。

2012/01/01 00:10, 10
2012/01/01 00:30, 5
2012/01/01 01:00, 10
2012/01/01 01:40, 10
2012/01/01 02:00, 20
Run Code Online (Sandbox Code Playgroud)

该表通过仅保留间隔的上限来存储基于间隔的数据。例如,第一行表示从 [00:00 - 00:10] 的区间,值为 10,第二行表示从 (00:10 - 00:30] 的区间,值为 5,第三行表示区间区间为 (00:30 - 01:00),值为 10。

我需要在 Postgres 中进行一个有效的查询来聚合上述结构的每小时数据。所以结果会是这样的:

2012/01/01 00:00, 2012/01/01 01:00, 25
2012/01/01 01:00, 2012/01/01 02:00, 30
Run Code Online (Sandbox Code Playgroud)

请注意,时间序列数据很大,因此非常感谢您对索引的任何帮助。

谢谢,丹

postgresql performance aggregate query-performance

10
推荐指数
1
解决办法
1万
查看次数

PostgreSQL - 按索引对数组求和

我在 PostgreSQL 中有一个 doubles 列(double precision[])的数组,它可以保留一天的半小时值。所以每个数组都有 48 个值。我需要一个有效的查询,它按索引对所有这些数组列求和,并生成一个新的 48 数组索引,如下所述

A = double[48] = {3,2,0,3....1}
B = double[48] = {1,0,3,2....5}

RESULT = double[48] = {A[0] + B[0], A[1] + B[1],...,A[47] + B[47]}
Run Code Online (Sandbox Code Playgroud)

谢谢!

postgresql performance array postgresql-performance

2
推荐指数
1
解决办法
2936
查看次数