Funzioni di aggregazione aggregation-functions
Le funzioni di aggregazione eseguono calcoli su un insieme di valori e restituiscono un singolo risultato riepilogato. Queste funzioni consentono di analizzare i dati all'interno delle espressioni di percorso calcolando le medie, trovando i valori minimi e massimi, contando gli elementi e sommando i valori numerici.
Utilizzare le funzioni di aggregazione quando è necessario:
- Calcola valori statistici da elenchi o matrici (avg, sum, min, max)
- Conta elementi nelle raccolte (count, countOnlyNull, countWithNull), con opzioni per includere o escludere valori Null
- Determina valori univoci nei set di dati (distinctCount, distinctCountWithNull)
- Prendere decisioni basate sui dati in base a metriche calcolate
Le funzioni di aggregazione gestiscono automaticamente i valori Null in base al loro comportamento specifico, semplificando l'utilizzo di dati reali che possono contenere valori mancanti o non definiti.
avg avg
Restituisce il valore medio tra un insieme di espressioni, sotto forma di elenco o di due espressioni. I valori Null vengono ignorati.
avg(<parameter>)Tipi supportati:
- listInteger
- listDecimal
- decimale
- intero
avg(<listInteger>)
avg(<listDecimal>)
avg(<decimal>,<decimal>)
avg(<decimal>,<integer>)
avg(<integer>,<decimal>)
avg(<integer>,<integer>)
Restituisce un valore decimale.
avg(@event{BarBeacon.inventory},5)
avg([10,3,8])
Restituisce 7,0.
avg(10.2, 3)
Restituisce 6,6.
conteggio count
Conta gli elementi dell’elenco senza tenere conto dei valori nulli.
count(<listAny>)
count(<listObject>)
| table 0-row-3 1-row-3 | ||
|---|---|---|
| Parametro | Tipo | Descrizione |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly o listObject | Elenco da elaborare. Per listObject, deve essere un riferimento di campo. Un listObject non può contenere un oggetto null. |
count(<listAny>)
Restituisce un numero intero.
count([10,2,10,null])
Restituisce 3.
count(@event{my_event.productListItems})
Restituisce il numero di oggetti nella matrice di oggetti specificata (tipo listObject). Nota: listObject non può contenere un oggetto null
countOnlyNull countOnlyNull
Conta il numero di valori Null nell'elenco.
countOnlyNull(<listAny>)| table 0-row-2 1-row-2 | |
|---|---|
| Parametro | Tipo |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly |
countOnlyNull(<listAny>)
Restituisce un numero intero.
countOnlyNull([10,2,10,null])
Restituisce 1.
Nota: Il parametro <listObject> non è supportato in questa funzione.
countWithNull countWithNull
Conta tutti gli elementi dell’elenco, inclusi i valori Null.
countWithNull(<listAny>)| table 0-row-2 1-row-2 | |
|---|---|
| Parametro | Tipo |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly |
countWithNull(<listAny>)
Restituisce un numero intero.
countWithNull([10,2,10,null])
Restituisce 4.
Nota: Il parametro <listObject> non è supportato in questa funzione.
distinctCount distinctCount
Conta il numero di valori diversi ignorando i valori Null.
distinctCount(<listAny>)| table 0-row-3 1-row-3 2-row-3 | ||
|---|---|---|
| Parametro | Tipo | Descrizione |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly o listObject | Elenco da elaborare. Per listObject, deve essere un riferimento di campo. |
| keyAttributeName | stringa | Questo parametro è facoltativo e solo per listObject. Se il parametro non viene fornito, un oggetto viene considerato duplicato se tutti gli attributi hanno gli stessi valori. In caso contrario, un oggetto viene considerato duplicato se l’attributo specificato ha lo stesso valore. |
distinctCount(<listAny>)
Restituisce un numero intero.
distinctCount(<listObject>)
distinctCount(<listObject>,<string>)
Restituisce un elenco di oggetti.
distinctCount([10,2,10,null])
Restituisce 2.
distinctCount(@event{my_event.productListItems})
Restituisce il numero di oggetti strettamente distinti nella matrice di oggetti specificata (tipo listObject).
distinctCount(@event{my_event.productListItems}, "SKU")
Restituisce il numero di oggetti con un valore di attributo "SKU" distinto{}.
distinctCountWithNull distinctCountWithNull
Conta il numero di valori diversi, inclusi i valori Null.
distinctCountWithNull(<listAny>)| table 0-row-2 1-row-2 | |
|---|---|
| Parametro | Tipo |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly |
distinctCountWithNull(<listAny>)
Restituisce un numero intero.
distinctCountWithNull([10,2,10,null])
Restituisce 3.
Nota: Il parametro <listObject> non è supportato in questa funzione.
max max
Restituisce il valore massimo in un insieme di espressioni, sotto forma di elenco o di due espressioni. I valori Null vengono ignorati.
max(<parameter>)- listDuration
- listInteger
- listDecimal
- listDateTime
- listDateTimeOnly
- listDateOnly
- durata
- intero
- decimale
- dateTime
- dateTimeOnly
max(<listDuration>)
Restituisce una durata.
max(<listInteger>)
Restituisce una durata.
max(<listDateTimeOnly>)
Restituisce un valore datetime senza considerare il fuso orario.
max(<listDateTime>)
Restituisce un valore datetime.
max(<listDateOnly>)
Restituisce una data.
max(<listDecimal>)
Restituisce un valore decimale.
max(<decimal>,<decimal>)
Restituisce un valore decimale.
max(<duration>,<duration>)
Restituisce una durata.
max(<dateTime>,<dateTime>)
Restituisce un valore datetime.
max(<dateTimeOnly>,<dateTimeOnly>)
Restituisce un valore datetime senza considerare il fuso orario.
max(<integer>,<integer>)
Restituisce un numero intero.
max(@event{BarBeacon.inventory},5)
max([10,3,8])
Restituisce 10.
max([10,null,8])
Restituisce 10.
min min
Restituisce il valore minimo in un insieme di espressioni, sotto forma di elenco o di due espressioni. I valori Null vengono ignorati.
min(<parameters>)- listDuration
- listInteger
- listDecimal
- listDateTime
- listDateTimeOnly
- listDateOnly
- durata
- intero
- decimale
- dateTime
- dateTimeOnly
min(<listDuration>)
Restituisce una durata.
min(<listInteger>)
Restituisce una durata.
min(<listDateTimeOnly>)
Restituisce un valore datetime senza considerare il fuso orario.
min(<listDateTime>)
Restituisce un valore datetime.
min(<listDateOnly>)
Restituisce una data.
min(<listDecimal>)
Restituisce un valore decimale.
min(<decimal>,<decimal>)
Restituisce un valore decimale.
min(<duration>,<duration>)
Restituisce una durata.
min(<dateTime>,<dateTime>)
Restituisce un valore datetime.
min(<dateTimeOnly>,<dateTimeOnly>)
Restituisce un valore datetime senza considerare il fuso orario.
min(<integer>,<integer>)
Restituisce un numero intero.
min(@event{BarBeacon.inventory},5)
min([10,3,8])
Restituisce 3.
min([10,null,8])
Restituisce 8.
sum sum
Restituisce la somma dei valori di un insieme di espressioni. I valori Null vengono ignorati.
sum(<parameters>)- listInteger
- listDecimal
- durata
- intero
- decimale
sum(<listDecimal>)
Restituisce un valore decimale.
sum(<listInteger>)
Restituisce un numero intero.
sum(<integer>,<integer>)
Restituisce un numero intero.
sum(<decimal>,<decimal>)
Restituisce un valore decimale.
sum(@event{BarBeacon.inventory},5)
sum([10,3,8])
Restituisce 21.
sum([10.5,null,8.1])
Restituisce 18,6.