gpt4 book ai didi

sql - 用postgresql中分区的最后一个值填充列

转载 作者:行者123 更新时间:2023-11-29 13:57:26 24 4
gpt4 key购买 nike

我正在尝试返回分区的最后一个值并将其应用于列的其余部分

例如,如果我有以下...

ID    Date      Status
1 20150101
1 20150201
1 20150301
1 20150401 void
2 20150101
2 20150201
2 20150301

我想返回。

ID    Date      Status
1 20150101 void
1 20150201 void
1 20150301 void
1 20150401 void
2 20150101
2 20150201
2 20150301

我一直在玩下面的东西,但没有用。

select 
ID,
date,
case when status is null then last_value(status ignore nulls)
over (partition by id order by id, date) else status end as status
from table

如有任何帮助,我们将不胜感激。

最佳答案

您不需要 CASE 语句:

SELECT id, date, last_value(status) OVER (PARTITION BY id ORDER BY date) AS stat
FROM table;

关于sql - 用postgresql中分区的最后一个值填充列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28956967/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com