¿Cómo puedo detectar y enlazar cambios entre valores de fila en una tabla SQL?
Tengo una tabla que registra valores a lo largo del tiempo, similar a la siguiente:
RecordId Time Name
========================
1 10 Running
2 18 Running
3 21 Running
4 29 Walking
5 33 Walking
6 57 Running
7 66 Running
Después de consultar esta tabla, necesito un resultado similar al siguiente:
FromTime ToTime Name
=========================
10 29 Running
29 57 Walking
57 NULL Running
He jugado con algunas de las funciones agregadas (por ejemplo, MIN, MAX, etc.), PARTICIÓN y CTE, pero parece que no puedo encontrar la solución correcta. Espero que un gurú de SQL pueda darme una mano, o al menos señalarme la dirección correcta. ¿Existe una forma bastante sencilla de consultar esto (preferiblemente sin un cursor?)