lag 和 lead

时间:2024-10-10 10:37:02

TableA如下:

TableA
id name
1000 A
1001 B
1002 C
1003 D
1004 E

说明:

lag 和lead 有三个参数,第一个参数是列名,第二个参数是偏移的offset,第三个参数是 超出记录窗口时的默认值),lag 和lead 可以 获取结果集中,按一定排序所排列的当前行的上下相邻若干offset 的某个行的某个列。lag指向前、lead指向后。

1. lag  (向前)

 ,) over ( order by id )  from TableA;

结果如下:

id name lag(name,1,0)
1000 A 0
1001 B A
1002 C B
1003 D C
1004 E D

2. lead (向后)

,) over ( order by id )  from TableA;

结果如下:

id name lead(name,1,0)
1000 A B
1001 B C
1002 C D
1003 D E
1004 E 0