sql 中的主要功能未按预期工作

lead function in sql not working as expected

我正在使用以下查询来识别新的结束日期

但是,我得到的结果是

为什么我没有得到最后一行的 newEnddate?请帮助

您可以在最后一个参数 lead() 中使用相同的列:

lead(se.status_startdt, 1, se.status_startdt) over (partition by se.invoice_number order by se.status_startdt)

根据示例数据,这似乎是对 coalesce() 的使用:

coalesce(se.status_enddt, se.status_startdt)