lag función de ventana analítica

Devuelve el valor de expr de una fila anterior dentro de la partición.

Sintaxis

lag( expr [, offset [, default] ] )

Argumentos

  • expr: expresión de cualquier tipo.
  • offset: literal INTEGER opcional que especifica el desplazamiento.
  • default: expresión del mismo tipo que expr .

Devoluciones

El tipo de resultado coincide con expr .

Si es positivo, el valor se origina en la fila anterior a la fila actual especificando offset ORDER BY en la cláusula offset OVER. Un desplazamiento de 0 usa el valor de la fila actual. Un desplazamiento negativo usa el valor de una fila que sigue a la fila actual. Si no se especifica, offset el valor predeterminado es 1, la fila siguiente inmediatamente.

Si no hay ninguna fila en el desplazamiento especificado dentro de la partición, se usa el default especificado. El default valor predeterminado es NULL . Debe proporcionar una cláusula ORDER BY.

Esta función es un sinónimo de lead(expr, -offset, default) .

Ejemplos

> 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