To achieve what you ask, try the following:
SELECT (B.start_time - A.end_time) AS time_duration FROM MyTable A INNER JOIN MyTable B ON B.ID = (A.ID + 1) ORDER BY A.ID ASC
IF ID not sequential, then you can use
SELECT (B.start_time - A.end_time) AS time_duration FROM MyTable A CROSS JOIN MyTable B WHERE B.ID IN (SELECT MIN (C.ID) FROM MyTable C WHERE C.ID > A.ID) ORDER BY A.ID ASC
source share