Trong trường hợp của bạn, id
có vẻ như là số, bạn chỉ có thể tự tham gia:
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;
Đây không phải là phút giống nhau. Đó là trong vòng 60 giây. Bạn có thực sự cần cùng một phút thời gian trên lịch không? Nếu vậy, bạn có thể làm:
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);