SQL计算与前一行的时差

时间:2017-08-04 20:35:40

标签: sql calculated-field

我的代码提供订单号,预计交货时间,实际交货时间以及两次之间的差价。

如果订单延迟,我需要将差额添加到下一个订单中,以显示新的预计交货时间。

如何让SQL返回到上一行并获得计算的差异以添加到预计的交付时间?由于我们使用的是2012 SQL Shell,因此无法使用LAG。

1 个答案:

答案 0 :(得分:0)

这从当前记录

获取当前日期时间的日期
WITH orders AS
(SELECT  *, ROW_NUMBER() OVER (ORDER BY datetimecolumn) AS rownum
   FROM  mytable
)

SELECT DATEDIFF(second, curr.est_tod, prev.act_tod)
  FROM orders curr
 INNER JOIN orders prev
    ON curr.rownum = prev.rownum - 1