lag analysfönsterfunktion

Returnerar värdet expr för från en föregående rad i partitionen.

Syntax

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

Argument

  • expr: Ett uttryck av valfri typ.
  • offset: En valfri HELTalslitteral som anger förskjutningen.
  • default: Ett uttryck av samma typ som expr .

Returer

Resultattypen matchar expr .

Om är positivt kommer värdet från raden före den aktuella raden genom att order by offsetoffset anges i OVER-satsen. En förskjutning på 0 använder den aktuella radens värde. En negativ förskjutning använder värdet från en rad efter den aktuella raden. Om du inte anger offset standardvärdet 1 visas följande rad direkt.

Om det inte finns någon rad vid den angivna förskjutningen i partitionen används default den angivna . Standardvärdet default är NULL . Du måste ange en ORDER BY-sats.

Den här funktionen är en synonym till lead(expr, -offset, default) .

Exempel

> 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