我有滑动窗口问题。具体来说,我不知道我的窗口应该从哪里开始以及应该在哪里结束。我知道我的间隔/窗口的大小。
我需要找到提供最佳(或最差,取决于您如何看待)案例场景的窗口的开始/结束。
这是一个示例数据集:
value | tstamp
100 | 2013-02-20 00:01:00
200 | 2013-02-20 00:02:00
300 | 2013-02-20 00:03:00
400 | 2013-02-20 00:04:00
500 | 2013-02-20 00:05:00
600 | 2013-02-20 00:06:00
500 | 2013-02-20 00:07:00
400 | 2013-02-20 00:08:00
300 | 2013-02-20 00:09:00
200 | 2013-02-20 00:10:00
100 | 2013-02-20 00:11:00
假设我知道我的间隔需要 5 分钟。所以,我需要知道“价值”之和最高的 5 分钟间隔中包含的价值和时间戳。在我上面的例子中,从 '2013-02-20 00:04:00' 到 '2013-02-20 00:08:00' 的行将给我一个总和 400+500+600+500+400 = 2400 ,这是该表中 5 分钟内的最高值。
如果需要,我不反对使用多个表。但我试图找到一个“最佳情况”区间。结果可以是任何一种方式,只要它们净间隔。如果我在该时间间隔内获得所有数据点,它仍然有效。如果我得到起点和终点,我也可以使用它们。
我发现了几个 SQL 的滑动窗口问题,但还没有发现窗口大小是已知因素的任何地方,并且起点是未知的。