Аналитическая оконная функция nth_value
Область применения: Databricks SQL Databricks Runtime
Возвращает значение с определенным offset
в окне.
Синтаксис
nth_value(expr, offset) [ IGNORE NULLS | RESPECT NULLS ] OVER clause
Аргументы
expr
: выражение любого типа.offset
: литерал INTEGER с положительным значением.IGNORE NULLS
илиRESPECT NULLS
: когда используетсяIGNORE NULLS
, любое значениеexpr
, равное NULL, не учитывается. Значение по умолчанию —RESPECT NULLS
.- Предложение OVER: предложение, описывающее окно. См. статью "Функции окна".
Возвраты
Тип результата соответствует типу expr
.
Функция window возвращает значение 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