Mysql
 sql >> Base de données >  >> RDS >> Mysql

Calculer la différence de temps entre deux lignes

Pour obtenir ce que vous demandez, essayez ce qui suit (MISE À JOUR après modification depuis OP) :

SELECT A.requestid, A.starttime, (B.starttime - A.starttime) AS timedifference
FROM MyTable A INNER JOIN MyTable B ON B.requestid = (A.requestid + 1)
ORDER BY A.requestid ASC

SI requestid n'est pas consécutif, vous pouvez utiliser

SELECT A.requestid, A.starttime, (B.starttime - A.starttime) AS timedifference
FROM MyTable A CROSS JOIN MyTable B
WHERE B.requestid IN (SELECT MIN (C.requestid) FROM MyTable C WHERE C.requestid > A.requestid)
ORDER BY A.requestid ASC