我有以下表格T1:
ID | time
10 | 1000
10 | 1002
10 | 1003
11 | 1002
11 | 1004
现在我想从T1创建一个表T2,其中对于每个ID,显示连续的时间间隔,即
ID | time1 | time 2
10 | 1000 | 1002
10 | 1002 | 1003
10 | 1003 | NULL
11 | 1002 | 1004
11 | 1004 | NULL
所以time2条目基本上是下一行中time1的条目 我怎么能在MySql中做到这一点?
答案 0 :(得分:2)
试试这个:
SELECT
ID,
`time` AS time1,
(SELECT MIN(st.`time`) FROM T1 st WHERE st.ID = T1.ID AND st.`time` > T1.`time`) AS time2
FROM T1