我有一个类似
的mysql示例 view 表 ID Starttime Endtime
1 19
2 38
3 90
是否可以从下一列中查看下一个启动时间值并减去1,这样它应该是前一个的结束时间?就像这样:
ID Starttime Endtime
1 19 37
2 38 89
3 90 ....
我需要知道是否可以使用mysql查询来完成:
请注意,这只是一个视图而非实际的表格。
由于
答案 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