Condividi tramite


funzione analitica windowlag

Si applica a:segno di spunta sì Databricks SQL segno di spunta sì Databricks Runtime

Restituisce il valore di expr da una riga precedente all'interno del partition.

Sintassi

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

Argomenti

  • expr: espressione di qualsiasi tipo.
  • offset: un valore letterale intero facoltativo che specifica l'offset.
  • default: espressione dello stesso tipo di expr.
  • IGNORE NULLS o RESPECT NULLS: quando IGNORE NULLS viene specificato, qualsiasi expr valore NULL viene ignorato. Il valore predefinito è RESPECT NULLS.
  • Clausola OVER: clausola che descrive la finestra. Vedere: Window funzioni.

Valori restituiti

Il tipo di risultato corrisponde a expr.

Se offset è positivo, il valore proviene dalla riga che precede la riga corrente di offset specificata dal ORDER BY nella clausola OVER. Un offset pari a 0 utilizza il valore della riga corrente. Un offset negativo utilizza il valore di una riga che segue la riga corrente. Se non si specifica offset il valore predefinito 1, la riga immediatamente seguente.

Se non è presente alcuna riga nella offset indicata nel partition, viene utilizzata la default specificata. Il default valore predefinito è NULL. È necessario specificare una clausola ORDER BY.

Questa funzione è un sinonimo di lead(expr, -offset, default).

Esempi

> 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