我刚收到应用程序的新数据源,它将数据插入到
Derby
仅当数据库更改时。通常,丢失的数据是很好的——我用数据(随时间变化的值)绘制一个折线图,然后在两个点之间画一条线,外推任意给定点的预期值。问题是,在这种情况下,由于丢失的数据意味着“画一条直线”,如果我这样做,图表将是不正确的。
有两种方法可以解决这个问题:我可以创建一个新类,以不同的方式处理丢失的数据(这可能很困难,因为预先使用的方式、我使用的绘图库、处理绘图),或者我可以复制行,留下
Y
在更改
X
每行中的值。我可以用Java来连接数据库和渲染器,或者我可以修改SQL。
我的问题是,给出如下结果集:
+-------+---------------------+
| value | received |
+-------+---------------------+
| 7 | 2000-01-01 08:00:00 |
| 10 | 2000-01-01 08:00:05 |
| 11 | 2000-01-01 08:00:07 |
| 2 | 2000-01-01 08:00:13 |
| 4 | 2000-01-01 08:00:16 |
+-------+---------------------+
假设我在8:00:20查询它,我如何使用SQL使它看起来像下面这样?基本上,我每秒钟复制一次行,直到它被占用。
received
无论出于何种目的,都是独一无二的
WHERE
查询中的子句)。
+-------+---------------------+
| value | received |
+-------+---------------------+
| 7 | 2000-01-01 08:00:00 |
| 7 | 2000-01-01 08:00:01 |
| 7 | 2000-01-01 08:00:02 |
| 7 | 2000-01-01 08:00:03 |
| 7 | 2000-01-01 08:00:04 |
| 10 | 2000-01-01 08:00:05 |
| 10 | 2000-01-01 08:00:06 |
| 11 | 2000-01-01 08:00:07 |
| 11 | 2000-01-01 08:00:08 |
| 11 | 2000-01-01 08:00:09 |
| 11 | 2000-01-01 08:00:10 |
| 11 | 2000-01-01 08:00:11 |
| 11 | 2000-01-01 08:00:12 |
| 2 | 2000-01-01 08:00:13 |
| 2 | 2000-01-01 08:00:14 |
| 2 | 2000-01-01 08:00:15 |
| 4 | 2000-01-01 08:00:16 |
| 4 | 2000-01-01 08:00:17 |
| 4 | 2000-01-01 08:00:18 |
| 4 | 2000-01-01 08:00:19 |
| 4 | 2000-01-01 08:00:20 |
+-------+---------------------+
谢谢你的帮助。