【发布时间】:2017-01-12 08:38:47
【问题描述】:
我有以下问题:
表一:
id, timestamp, value1,value2,value3
1, 12.01.2017 09:00:01, 234, 345, 456
2, 12.01.2017 09:00:05, 567, 678, 789
3, 12.01.2017 09:00:25, 777, 888, 999
这些值是绝对值。现在我需要将此数据插入到一个新表中,但作为增量值。
这意味着我必须找到每条记录的上一条记录并减去这些值。
但不幸的是我没有到达那里......
我尝试了这样的自我加入:
select
se1.timestamp,
se1.value1,
se1.value2,
se1.value3
from
table1 se1,
table1 se2
where
se1.id = se2.id
and se1.timestamp < (select max(timestamp) from table1)
order by
timestamp desc
fetch first 100 rows only;
如果有人能帮我解决这个问题,那就太好了……
输出应该是这样的:
timestamp, value1, value2, value3
12.01.2017 09:00:05, 333, 333, 333 (record from 09:00:01 subtracted)
12.01.2017 09:00:25, 210, 210, 210 (record from 09:00:05 subtracted)
我希望任何人都能理解这一点;)
【问题讨论】:
-
OOps。我忘了格式化代码:
-
我不明白你的问题,你能提供所需输出的例子吗?
-
您可以轻松编辑您的问题以格式化代码和数据(提示:ctrl+k)
-
@Wernfied Domscheid:我试图在帖子中更好地解释一下。我希望这有助于理解
-
@Aleksej:谢谢。我现在更新了...