【发布时间】:2021-12-05 21:21:25
【问题描述】:
我有下表:
id a b
1 1 kate
1 4 null
1 3 paul
1 3 paul
1 2 lola
2 1 kim
2 9 null
2 2 null
结果应该是这样的:
1 3 paul
2 1 kim
我想得到最后一个a,其中b is not null。比如:
select b
from (select,b
row_num() over (partition by id order by a desc) as num) as f
where num = 1
但是这样我得到一个空值,因为到最后一个a = 4 对应于b IS NULL。也许有一种方法可以从 pandas 重写 ffill 方法?
【问题讨论】:
-
我认为期望的结果应该是
kim而不是kate?
标签: sql postgresql greatest-n-per-group