适用于: Databricks SQL
Databricks Runtime
从分区中的后续行返回值 expr
。 此函数是 lag(expr, -offset, default)
的同义词。
语法
lead(expr [, offset [, default] ] ) [ IGNORE NULLS | RESPECT NULLS ] OVER clause
参数
-
expr
:任何类型的表达式。 -
offset
:指定偏移量的可选整数文本。 -
default
:与expr
相同类型的表达式。 -
IGNORE NULLS
或RESPECT NULLS
:指定IGNORE NULLS
后,会忽略为 NULL 的所有expr
值。 默认为RESPECT NULLS
。 - OVER 子句:描述窗口的子句。 请参阅:窗口函数。
返回
结果类型匹配 expr
。
如果offset
为正值,则值源自在 OVER 子句中指定的当前行之后的行offset
ORDER BY。
如果偏移量为 0,则使用当前行的值。
负偏移量使用来自当前行之前的行的值。
如果未指定 offset
,则默认为 1,即紧接着的后一行。
如果在分区中的指定偏移量处没有行,则使用指定的 default
。
default
默认值为 NULL。
必须提供子ORDER BY句。
示例
> SELECT a, b, lead(b) OVER (PARTITION BY a ORDER BY b)
FROM VALUES ('A1', 2), ('A1', 1), ('A2', 3), ('A1', 1) tab(a, b);
A1 1 1
A1 1 2
A1 2 NULL
A2 3 NULL