Để nhận được chênh lệch thời gian tính bằng phút giữa hàng hiện tại và hàng trước đó, bạn có thể sử dụng timestampdiff
vào datenow
và lần trước mà bạn có thể nhận được thông qua truy vấn con:
select ticketid, datenew,
timestampdiff(minute,datenew,(select datenew from mytable t2
where t2.ticketid < t1.ticketid order by t2.ticketid desc limit 1)) as diff
from mytable t1
Cập nhật
Đây là một cách khác sử dụng biến để lưu trữ datenew
trước đó giá trị có thể nhanh hơn:
select ticketid, datenew, timestampdiff(minute,datenew,prevdatenew)
from (
select ticketid, datenew, @prevDateNew as prevdatenew,
@prevDateNew := datenew
from mytable order by ticketid
) t1