我正在尝试返回分区的最后一个值并将其应用到列的其余部分
例如,如果我有以下内容......
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
任何帮助都将不胜感激。
答案 0 :(得分:0)
您不需要CASE
声明:
SELECT id, date, last_value(status) OVER (PARTITION BY id ORDER BY date) AS stat
FROM table;