Поделиться через


функция lead аналитическая window

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

Возвращает значение expr из последующей строки в partition. Эта функция является синонимом для lag(expr, -offset, default).

Синтаксис

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

Аргументы

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

Возвраты

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

Если offset положительное значение исходит из строки после текущей строки, offset указал ORDER BY в предложении OVER. В 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