lag
analytische vensterfunctie
Van toepassing op: Databricks SQL Databricks Runtime
Retourneert de waarde van expr
uit een voorgaande rij binnen de partitie.
Syntaxis
lag( expr [, offset [, default] ] ) [ IGNORE NULLS | RESPECT NULLS ] OVER clause
Argumenten
-
expr
: Een expressie van elk type. -
offset
: Een optionele INTEGER-letterlijke waarde die de verschuiving aangeeft. -
default
: Een expressie van hetzelfde type alsexpr
. -
IGNORE NULLS
ofRESPECT NULLS
: WanneerIGNORE NULLS
is opgegeven, wordt elkeexpr
waarde die NULL is genegeerd. De standaardwaarde isRESPECT NULLS
. - OVER-component: de component die het venster beschrijft. Zie: Vensterfuncties.
Retouren
Het resultaattype komt overeen expr
.
Als offset
positief is, is de waarde afkomstig uit de rij die voorafgaat aan de volgende rij, zoals gespecificeerd door offset
binnen de ORDER BY in de OVER-clausule.
Bij een verschuiving van 0 wordt de waarde van de huidige rij gebruikt.
Een negatieve verschuiving maakt gebruik van de waarde uit een rij na de huidige rij.
Als u deze niet opgeeft offset
, wordt deze standaard ingesteld op 1, de rij direct na de rij.
Als er binnen de partitie geen rij is op de aangegeven offset, wordt default
gebruikt.
De default
standaardwaarde is NULL
.
U moet een ORDER BY clausule opgeven.
Deze functie is een synoniem voor lead(expr, -offset, default)
.
Voorbeelden
> SELECT a, b, lag(b) OVER (PARTITION BY a ORDER BY b)
FROM VALUES ('A1', 2), ('A1', 1), ('A2', 3), ('A1', 1) tab(a, b);
A1 1 NULL
A1 1 1
A1 2 1
A2 3 NULL