利用oracle提供的lead、lag 函数来查询已有记录的上一条、下一条记录。
求id=ae2e829ecffd4715a5c163f829c2e0f5的上一条记录和下一条记录
上一条记录的sql如下:
select * from t_company_apply where
id=(select c.p from (select id,lead(id,1,0) over (order by apply_date) as p from t_company_apply) c where c.id='ae2e829ecffd4715a5c163f829c2e0f5')
查询结果如下图:
下一条记录的sql如下:
select * from t_company_apply where
id=(select c.p from (select id,lag(id,1,0) over (order by apply_date) as p from t_company_apply) c where c.id='ae2e829ecffd4715a5c163f829c2e0f5')
查询结果如下图: