funkce analytického okna lead

Platí pro:zaškrtnuté ano Databricks SQL zaškrtnuté ano Databricks Runtime

Vrátí hodnotu expr z dalšího řádku v rámci skupiny. Tato funkce je synonymem pro lag(expr, -offset, default).

Syntaxe

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

Argumenty

  • expr: Výraz libovolného typu.
  • offset: Volitelný literál INTEGER určující posun.
  • default: Výraz stejného typu jako expr.
  • IGNORE NULLS nebo RESPECT NULLS: Při IGNORE NULLS zadání se ignoruje jakákoli expr hodnota, která má hodnotu NULL. Výchozí hodnota je RESPECT NULLS.
  • Klauzule OVER: Klauzule popisující okno. Viz: funkce okna .

Návraty

Typ výsledku odpovídá expr.

Pokud je offset kladná, hodnota pochází z řádku následujícího za aktuálním řádkem, kde offset je specifikováno pomocí ORDER BY v klauzuli OVER. Pokud je posun 0, používá se hodnota aktuálního řádku. Záporný posun používá hodnotu z řádku předcházejícího aktuálnímu řádku. Pokud nezadáte offset, jako výchozí hodnota se použije 1, tedy bezprostředně následující řádek.

Pokud v zadané pozici v rámci oddílu není žádný řádek, použije se určený default. Výchozí default hodnota je NULL. Je nutné zadat klauzuli ORDER BY.

Příklady

> 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