nth_value Функция аналитического окна

Область применения:проверка помечено да Databricks SQL проверка помечено да Databricks Runtime

Возвращает значение в определенном offset окне.

Синтаксис

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

Аргументы

  • expr: выражение любого типа.
  • offset: литерал INTEGER больше 0.
  • IGNORE NULLS или RESPECT NULLS: при IGNORE NULLS использовании любое expr значение, равное NULL, игнорируется в счетчике. Значение по умолчанию — RESPECT NULLS.
  • Предложение OVER: предложение, описывающее окно. См. статью Оконные функции.

Возвращает

Тип результата соответствует типу expr .

Оконная функция возвращает значение expr в строке, которая является строкой offsetот начала окна.

Если такой 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