dan*_*dan 3 sql postgresql aggregate-functions
我有一个包含以下列的表
table: route
columns: id, location, order_id
Run Code Online (Sandbox Code Playgroud)
并且它具有诸如的价值
id, location, order_id
1, London, 12
2, Amsterdam, 102
3, Berlin, 90
5, Paris, 19
Run Code Online (Sandbox Code Playgroud)
是否有可能在postgres中执行一个sql select语句,它将返回每一行以及带有下一个最高order_id的id?所以我想要......
id, location, order_id, next_id
1, London, 12, 5
2, Amsterdam, 102, NULL
3, Berlin, 90, 2
5, Paris, 19, 3
Run Code Online (Sandbox Code Playgroud)
谢谢
select
id,
location,
order_id,
lag(id) over (order by order_id desc) as next_id
from your_table
Run Code Online (Sandbox Code Playgroud)