In jouw geval, de id
s lijken numeriek te zijn, je kunt gewoon een self-join doen:
select t.*
from table t join
table tnext
on t.id = tnext.id - 1 and
t.StatusId = 1 and
tnext.StatusId = 6 and
datediff(second, t.MinStartTime, tnext.MinStartTime) < 60;
Dit is niet helemaal dezelfde minuut. Het is binnen 60 seconden. Heb je eigenlijk dezelfde kalendertijd minuut nodig? Zo ja, dan kunt u het volgende doen:
select t.*
from table t join
table tnext
on t.id = tnext.id - 1 and
t.StatusId = 1 and
tnext.StatusId = 6 and
datediff(second, t.MinStartTime, tnext.MinStartTime) < 60 and
datepart(minute, t.MinStartTime) = datepart(minute, tnext.MinStartTime);