滞后功能 - 问题

问题描述 投票:0回答:1

我有这样的数据:

年份 价值
2022 1000
2023 500

我想用以前的值创建列,如下所示:

年份 价值 值_PY
2022 1000
2023 500 1000
2024 500

LAG() 函数不是最佳解决方案,因为我得到的表没有 2024 行。我该如何解决这个问题?

lag(value) OVER(order by Year)

我该如何解决这个问题?我应该向这个 LAG() 函数添加什么?

sql select amazon-redshift lag
1个回答
0
投票
SELECT *, lag(value) OVER(order by Year) as Value_PY FROM
(
Select * from example
UNION 
select '2024' as Year, NULL as value
) t
年份 价值 值_PY
2022 1000
2023 500 1000
2024 500
© www.soinside.com 2019 - 2024. All rights reserved.