Freigeben über


lead-Analysefensterfunktion

Gilt für: durch Häkchen mit „Ja“ markiert Databricks SQL durch Häkchen mit „Ja“ markiert Databricks Runtime

Gibt den Wert von expr aus einer nachfolgenden Zeile innerhalb der Partition zurück. Diese Funktion ist ein Synonym für lag(expr, -offset, default).

Syntax

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

Argumente

  • expr: Ein Ausdruck beliebigen Typs
  • offset: Ein optionales INTEGER-Literal, das den Offset angibt.
  • default: Ein Ausdruck desselben Typs wie expr.
  • IGNORE NULLS oder RESPECT NULLS: Wenn IGNORE NULLS verwendet wird, wird jeder expr-Wert, der NULL ist, ignoriert. Der Standardwert lautet RESPECT NULLS.
  • OVER-Klausel: Die Klausel, welche die Fenstererstellung beschreibt. Siehe Fensterfunktionen.

Gibt zurück

Der Ergebnistyp entspricht expr.

Wenn offset positiv ist, stammt der Wert aus der Zeile, die der aktuellen Zeile nach offset folgt, wie in ORDER BY in der OVER-Klausel angegeben. Bei einem Offset von 0 wird der Wert der aktuellen Zeile verwendet. Bei einem negativen Offset wird der Wert aus einer Zeile vor der aktuellen Zeile verwendet. Wenn Sie offset nicht angeben, ist der Standardwert 1 (die unmittelbar folgende Zeile).

Wenn innerhalb der Partition keine Zeile am angegebenen Offset vorhanden ist, wird der angegebene default-Wert verwendet. Der default-Standardwert ist NULL. Eine ORDER BY-Klausel muss angegeben werden.

Beispiele

> 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