oracle中lag和lead函数的使用,取出上一条记录的字段

lag和lead函数可以在同一次查询中取出同一字段的前N行数据(lag)和后N行数据(lead)。这种字段可以使用对相同表的表连接来实现,不过使用lag和lead函数具有更高的效率。
SELECT *
FROM (select pid,
sp.Psnname,
sp.Upbid,
sp.Updid,
sp.startdate,
sp.enddate,
lag(enddate, 1, null) over(partition by pid order by startdate) as pior --取前1条的enddate
from sl_person sp
where sp.Channel in (‘3’)
where pior > startdate

在这里插入图片描述

发布了37 篇原创文章 · 获赞 2 · 访问量 3223

猜你喜欢

转载自blog.csdn.net/paocai_2019/article/details/102897548