下一栏中的值

时间:2014-02-06 22:57:04

标签: mysql

我有一个类似

的mysql示例 view
  ID     Starttime   Endtime
   1         19
   2         38
   3         90

是否可以从下一列中查看下一个启动时间值并减去1,这样它应该是前一个的结束时间?就像这样:

ID     Starttime   Endtime
1         19          37
2         38          89
3         90          ....

我需要知道是否可以使用mysql查询来完成:

请注意,这只是一个视图而非实际的表格。

由于

1 个答案:

答案 0 :(得分:3)

http://sqlfiddle.com/#!2/59a1d2/2

您可以使用自我加入,例如

select t1.id, t1.start_time, t2.start_time -1  end_time
from times t1 join times t2 on t1.id = t2.id-1

修改

其中开始时间与结束时间相同

select t1.id, t1.start_time, greatest(t1.start_time,t2.start_time-1)  end_time
from times_v t1 join times_v t2 on t1.id = t2.id-1

http://sqlfiddle.com/#!2/340897/1