次の方法で共有


nth_value 分析ウィンドウ関数

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

ウィンドウ内の特定の offset にある値を返します。

構文

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

引数

  • expr: 任意の型の式。
  • offset: 0 より大きい整数リテラル。
  • IGNORE NULLS または RESPECT NULLS: IGNORE NULLS が使用されている場合、NULL である expr 値はすべてのカウントで無視されます。 既定では、 RESPECT NULLSです。
  • OVER 句: ウィンドウを記述する句です。 「ウィンドウ関数」を参照してください。

戻り値

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

ウィンドウ関数では、ウィンドウ フレームの先頭から offset 番目の行にある expr の値を返します。

そのような offset 番目の行がない場合、NULL を返します。

この関数では、ORDER BY 句を使用する必要があります。 順序が一意でない場合、結果は非決定論的になります。

> SELECT a, b, nth_value(b, 2) 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   1
 A1 2   1
 A2 3   NULL