次の方法で共有


lead 分析 window 関数

適用対象:「はい」のチェック マーク Databricks SQL 「はい」のチェック マーク Databricks Runtime

partition内の後続の行から expr の値を返します。 この関数は lag(expr, -offset, default) の同意語です。

構文

lead(expr [, offset [, default] ] ) [ IGNORE NULLS | RESPECT NULLS ] OVER clause

引数

  • expr: 任意の型の式。
  • offset: offsetを指定する省略可能な INTEGER リテラル。
  • default: expr と同じ型の式。
  • IGNORE NULLS または RESPECT NULLS: IGNORE NULLS が指定されている場合、NULL の expr 値はすべて無視されます。 既定では、 RESPECT NULLSです。
  • OVER 句: ウィンドウを記述する句です。 参照: Window 関数

戻り値

結果の型は expr と一致します。

offset が正の場合、OVER 句の ORDER BY で指定した offset だけ、現在の行より後ろの行から値が生成されます。 offset の値が 0 の場合、現在の行の値を使用します。 負の offset は、現在の行の前にある行の値を使用します。 offset を指定しない場合の既定値 は 1 で、直後の行です。

partition 内の指定した offset に行がない場合は、指定した 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