Encuentre la diferencia horaria entre dos filas consecutivas en la misma tabla en sql

Estoy atascado. He buscado una respuesta, pero parece que no puedo encontrar el tiempo de resta en la misma tabla de dos filas diferentes de la misma tabla que se ajusta. Estoy teniendo un momento difícil con la siguiente consulta. En la tabla a continuación, quiero diferenciar el TimeOut de una fila al TimeIn de la siguiente fila. Considere en la siguiente tabla encontrar la diferencia en minutos entre TimeOut en la fila 1 (10:35 am) y TimeIn en la fila 2 (10:38 am).

Tabla 1:TIMESHEET

ROW    EmpID       TimeIn                   TimeOut
----------------------------------------------------------------
1       138         2014-01-05 10:04:00      2014-01-05 10:35:00   
2       138         2014-01-05 10:38:00      2014-01-05 10:59:00 
3       138         2014-01-05 11:05:00      2014-01-05 11:30:00  

Resultados previstos

ROW    EmpID       TimeIn                   TimeOut                  Minutes
----------------------------------------------------------------------------
1       138         2014-01-05 10:04:00      2014-01-05 10:35:00       
2       138         2014-01-05 10:38:00      2014-01-05 10:59:00       3
3       138         2014-01-05 11:05:00      2014-01-05 11:30:00       6
etc
etc
etc

Básicamente, necesito diferenciar los tiempos en la consulta para mostrar cuánto tiempo estuvieron los empleados en descanso.

He intentado unirme, pero eso no parece funcionar y no sé siOVER conPARTITION es el camino a seguir, porque parece que no puedo seguir la lógica (Sí, todavía estoy aprendiendo). También estoy considerando dos tablas temporales y comparándolas, pero eso no funciona cuando empiezo a cambiar los días o las identificaciones de los empleados. Finalmente, estoy pensando que tal vezLEAD en unOVER ¿declaración? ¿O es simple hacer unDATEDIFF con unCAST?

Respuestas a la pregunta(5)

Su respuesta a la pregunta