sql查询计算两个连续行之间的时间差
问题描述:
任何人都可以帮助我计算两行之间的时差(hh:mm
),当Procs_ID
从01更改为另一个Procs_ID
时。sql查询计算两个连续行之间的时间差
Procs_ID meter_id date
01 0000012 2015-10-12 09:07:22.530
03 0000013 2015-10-12 09:11:51.733
01 0000014 2015-10-12 09:12:38.550
02 0000015 2015-10-12 10:38:52.923
03 0000016 2015-10-12 10:40:33.467
01 0000017 2015-10-12 10:40:56.013
在此先感谢
答
这里是LEAD
其中一个例子是avaliable为SQL Server 2012+
select
*,
case
when Procs_Id = '01'
and lead(Procs_ID) over (order by [date]) <> Procs_ID then datediff(mi,[date],lead([date]) over (order by [date]))
end as TimeDiffInMin
from YourTable
+0
HI scsimon,我正在使用MS Sql服务器,由于'lead'不是公认的内置函数名称,所以出现错误。谢谢 –
您可以在SQL Server – dfundako
做到这一点使用延时/铅可你也交您的预期产出? – GarethD
你使用的是什么SQL版本?使用方法各不相同。 – SMM