我希望上级值等于下一年的值,比如:
Year Value Superior_Val 0 0.1 0.3 1 0.3 0.7 2 0.7 1.6 3 1.6
我怎样才能让它像这样工作(这是错误的,但只是为了理解我想要实现的目标):
Superior_Val=Value where Year=Year+1
u0sqgete1#
你可以用 lead() :
lead()
select t.*, lead(value) over (order by year) as next_value from t;
yyyllmsg2#
很多方法可以做到这一点,如果一年是可靠的,那么一个自我加入
select a.year,a.value, b.value from t a left join t b on b.year = a.year + 1
2条答案
按热度按时间u0sqgete1#
你可以用
lead()
:yyyllmsg2#
很多方法可以做到这一点,如果一年是可靠的,那么一个自我加入