Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Lag
La funzione lag
calcola il valore lag (precedente) per una misura in base ai partizionamenti e agli ordinamenti specificati.
lag
è supportato per l'uso con le analisi basate sui set di dati SPICE e delle query dirette.
Sintassi
Le parentesi sono obbligatorie. Per vedere quali argomenti sono facoltativi, consulta le seguenti descrizioni.
lag (
lag ( measure ,[ sortorder_field ASC_or_DESC, ... ] ,lookup_index ,[ partition_field, ... ] )
] )
Argomenti
- misura
-
La misura per la quale si desidera ottenere il valore lag. Può essere incluso un aggregato, ad esempio
sum({Sales Amt})
. - campo ordinamento
-
Una o più misure e le dimensioni in base alle quali si desidera ordinare i dati, separati da virgole. È possibile specificare l'ordinamento crescente (
ASC
) o decrescente (DESC
).Ogni campo nell'elenco è racchiuso tra {} (parentesi graffe), se si tratta di più di una parola. L'intero elenco è racchiuso tra [ ] (parentesi quadre).
- indice di ricerca
-
L'indice di ricerca può essere positivo o negativo, indicando una riga seguente nell'ordinamento (positivo) o una riga precedente nell'ordinamento (negativo). L'indice di ricerca può essere compreso tra 1 e 2.147.483.647. Per i motori MySQL, MariaDB e Amazon Aurora MySQL-Compatible Edition, l'indice di ricerca è limitato solo a 1.
- partition field
-
(Facoltativo) Una o più dimensioni in base alle quali si desidera eseguire la partizione, separate da virgole.
Ogni campo nell'elenco è racchiuso tra {} (parentesi graffe), se si tratta di più di una parola. L'intero elenco è racchiuso tra [ ] (parentesi quadre).
Esempio
L'esempio seguente calcola la precedente sum(sales)
, partizionata in base allo stato di origine, in ordine crescente per cancellation_code
.
lag ( sum(Sales), [cancellation_code ASC], 1, [origin_state_nm] )
L'esempio seguente usa un campo calcolato con lag
per visualizzare l'importo della riga precedente accanto all'importo della riga corrente, ordinato per Order Date
. I campi nel calcolo della tabella sono nel contenitore dei campi dell'elemento visivo.
lag( sum({Sales}), [{Order Date} ASC], 1 )
Il seguente screenshot mostra i risultati dell'esempio.
L'esempio seguente usa un campo calcolato con lag
per visualizzare l'importo delle vendite per la riga precedente accanto all'importo della riga corrente, ordinato per Order Date
diviso per Segment
.
lag ( sum(Sales), [Order Date ASC], 1, [Segment] )
Il seguente screenshot mostra i risultati dell'esempio.