如何在当前日期和下一个日期之间进行日期差异?

How doing a datediff between current and next date?

我想在两列之间做一个日期差异,如示例中所述:

 date 1    date 2
 date 1.1  date 2.1
 date 1.2  date 2.2
 date 1.3  date 2.3
 date 1.4  date 2.4

我想做 datediff (date 2.1,date 1.2), datediff (date 2.2,date 1.3)? datediff(日期 2.3,日期 1.4)...

计算日期 2 的当前日期和日期 1 的下一个日期之间的差异。

有什么帮助吗?

您可以使用 lag()lead() 。 . .很难说是哪个方向。但是像这样:

select t.*,
       datediff(day,
                lag(end_date) over (order by start_date),
                start_date
               ) as dates_between
from t;