【发布时间】:2020-09-20 15:36:44
【问题描述】:
我有来自相同来源的不同速率的数据。我想绘制数据(并进行一些阈值处理等),最简单的方法是将其视为时间序列数据。
我的数据如下:
SourceID, SubmissionTime, Daily_Data
-------------------------------
ABC, 2020-01-01 10h32, 100
ABC, 2020-01-01 10h45, 101
ABC, 2020-01-02 09h01, 120
DEF, 2020-01-01 15h30, 123
和
SourceID, SubmissionTime, Weekly_Data
-------------------------------
ABC, 2020-01-01 09h00, Joe
ABC, 2020-01-08 09h21, Soap
ABC, 2020-01-14 15h20, Bill
每天和每周的提交大约相隔一天或一周,并且是用户输入,因此存在差距、延迟、错误数据等。我想得到的是这样的:
SourceID, Daily_Date, Weekly_date, Weekly_datatime, Weekly_Data
-------------------------------
ABC, 2020-01-01, 2020-01-01 09h00, 101, Joe
ABC, 2020-01-02, 2020-01-01 09h00, 120, Joe
ABC, 2020-01-03, 2020-01-01 09h00, 122, Joe
...
ABC, 2020-01-07, 2020-01-01 09h00, 133, Joe
ABC, 2020-01-07, 2020-01-14 15h20, 145, Soap
提取日期非常简单,但是只有在每周提交发生后,我才能对行进行最近的日期时间连接。我一直在 TimscaleDB 中做类似的事情,但现在这是在其他人的数据库上,他们不想要额外的扩展......
【问题讨论】:
-
您的结果与样本数据有什么关系?额外的日期从何而来?第三排的 122 是哪来的?
-
都是虚构的数据。 122 只是为了填补空白并指示可能的输出,而不是 100% 准确。我认为这个概念很简单,不需要对虚拟数据迂腐。
-
。 .你的虚构数据是我的困惑。
标签: sql postgresql time-series