服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > 数据库技术 > Oracle技术 > Oracle开发 > 查看文档

轻松掌握"lag"与"lead"分析函?的用法

lag与lead分析函?的用法:

参考示例:

lag(expression,<offset>,<default>)

sql> with a as (select 1 id,'a' name from dual
2 union
3 select 2 id,'b' name from dual
4 union
5 select 3 id,'c' name from dual
6 union
7 select 4 id,'d' name from dual
8 union
9 select 5 id,'e' name from dual
10 )
11 select id,name,lag(id,1,'')over(order by name) from a
12 /

id name lag(id,1,'')over(orderbyname)
---------- ---- -----------------------------
1 a 
2 b 1
3 c 2
4 d 3
5 e 4



lead(expresion,<offset>,<default>)

sql> with a as (select 1 id,'a' name from dual
2 union
3 select 2 id,'b' name from dual
4 union
5 select 3 id,'c' name from dual
6 union
7 select 4 id,'d' name from dual
8 union
9 select 5 id,'e' name from dual
10 )
11 select id,name,lead(id,1,'')over(order by name) from a
12 /

id name lead(id,1,'')over(orderbyname)
---------- ---- ------------------------------
1 a 2
2 b 3
3 c 4
4 d 5
5 e

扫描关注微信公众号