计算行之间的时间

时间:2016-12-03 18:12:13

标签: sql datetime

表dbo.Update包括更新发生的日期时间以及按人员ID输入的日期时间。

在我的结果集中,我需要包括更新时间和创建更新的人员以及自上次更新以来的时间

例如

ID    Datetime     Person     Time Between
1     0900hrs      1          -
2     0947hrs      2          47m
3     1030hrs      1          43m

dbo.Update中的行数会有所不同,有时差异可能会持续数天甚至数周。

如果有人可以帮助,我无法弄清楚如何做到这一点?

提前致谢!

〜d

1 个答案:

答案 0 :(得分:0)

您的语法表明您使用的是SQL Server。在SQL Server 2012+中,只需使用lag()

select t.*,
       datediff(minute, lag(datetime) over (order by datetime), datetime) as diff_in_minutes
from t;