我想知道如何为具有相同ID的两行获取值(Val)的差异,并从SQL查询返回该值。这里的困难在于我是第二行和第一行之间的区别,每个ID只有两行。
我正在使用SQLite 3.8.6。
以下是我的表格:
ID Val TimeStamp
+---+----+---------------------+
| 2 | 7 | 2015-05-09 12:54:39 |
| 2 | 2 | 2015-05-09 14:48:30 |
| 3 | 16 | 2015-05-09 13:19:57 |
| 3 | 20 | 2015-05-09 15:01:09 |
+---+----+---------------------+
我想最终:
ID Val
+---+----+
| 2 | -5|
| 3 | 4 |
+---+----+
答案 0 :(得分:5)
select
t1.id,t2.val-t1.val AS [Val]
from table t1
inner join table t2 ON t1.ID=t2.ID
AND t1.TimeStamp<t2.Timestamp