Aggr - funzione per grafici
Aggr() restituisce una matrice di valori per l'espressione calcolata in base alla dimensione o alle dimensioni dichiarate. Ad esempio, il valore massimo delle vendite, per cliente, per regione.
La funzione Aggr è utilizzata per le aggregazioni nidificate, in cui il relativo primo parametro (l'aggregazione interna) è calcolato una volta per valore dimensionale. Le dimensioni sono specificate nel secondo parametro (e nei parametri successivi).
Inoltre, la funzione Aggr deve essere racchiusa in una funzione di aggregazione esterna, utilizzando la gamma di risultati dalla funzione Aggr come input per l'aggregazione in cui risulta nidificata.
Sintassi:
Aggr({SetExpression}[DISTINCT] [NODISTINCT ] expr, StructuredParameter{, StructuredParameter})
Tipo di dati restituiti: duale
Argomenti:
Argomento | Descrizione |
---|---|
expr |
Un'espressione costituita da una funzione di aggregazione. Per impostazione predefinita, la funzione di aggregazione aggrega la serie di possibili record definiti dalla selezione. |
StructuredParameter |
StructuredParameter è composto da una dimensione e, facoltativamente, da criteri di ordinamento nel formato: (Dimension(Sort-type, Ordering)) La dimensione è un campo singolo e non può essere un'espressione. Viene utilizzata per determinare la matrice di valori per cui viene calcolata l'espressione Aggr. Se sono inclusi criteri di ordinamento, la matrice di valori creata dalla funzione Aggr, calcolata per la dimensione, verrà ordinata. Questo è importante quando l'ordinamento influisce sul risultato dell'espressione in cui è racchiusa la funzione Aggr. Per informazioni dettagliate su come utilizzare i criteri di ordinamento, vedere Aggiunta di criteri di ordinamento alla dimensione nel parametro strutturato. |
SetExpression | Per impostazione predefinita, la funzione di aggregazione aggrega la serie di possibili record definiti dalla selezione. È possibile definire una serie di record alternativa mediante un'espressione Set Analysis. |
DISTINCT |
Se l'argomento dell'espressione è preceduto dal qualificatore distinct o se non viene utilizzato alcun qualificatore, ogni combinazione distinta di valori di dimensione restituirà un solo valore. Questa è la modalità normale in cui vengono create le aggregazioni; ciascuna combinazione distinta di valori di dimensione restituisce una linea nel grafico. |
NODISTINCT |
Se l'argomento dell'espressione è preceduto dal qualificatore nodistinct, ogni combinazione di valori di dimensione può restituire più valori, a seconda della struttura dati sottostante. Se esiste una sola dimensione, la funzione aggr restituirà una matrice con un numero di elementi uguale al numero di righe presenti nei dati sorgente. |
Le funzioni di aggregazione di base, quali Sum, Min e Avg, restituiscono un singolo valore numerico, mentre la funzione Aggr() può essere paragonata alla creazione di un set di risultati temporaneo (una tabella virtuale) su cui è possibile effettuare un'altra aggregazione. Ad esempio, è possibile calcolare il valore medio delle vendite sommando le vendite per cliente in un'istruzione Aggr() e calcolando quindi la media dei risultati sommati: Avg(TOTAL Aggr(Sum(Sales),Customer)).
Limiti:
Ogni dimensione presente in una funzione Aggr() deve corrispondere a un campo singolo e non può essere un'espressione (dimensione calcolata).
Aggiunta di criteri di ordinamento alla dimensione nel parametro strutturato
Nella sua forma di base, l'argomento StructuredParameter nella sintassi della funzione Aggr è una dimensione singola. L'espressione Aggr(Sum(Sales, Month)) trova il valore totale delle vendite per ogni mese. Tuttavia, se viene inclusa in un'altra funzione di aggregazione, potrebbero venire restituiti risultati imprevisti, a meno che non vengano utilizzati i criteri di ordinamento. Ciò è dovuto al fatto che alcune dimensioni possono essere ordinate con criterio numerico o con criterio alfabetico e così via.
Nell'argomento StructuredParameter all'interno della funzione Aggr è possibile specificare criteri di ordinamento per la dimensione nell'espressione. In questo modo si impone un ordinamento alla tabella virtuale prodotta dalla funzione Aggr.
La sintassi dell'argomento StructuredParameter è la seguente:
(FieldName, (Sort-type, Ordering))
I parametri strutturati possono essere nidificati:
(FieldName, (FieldName2, (Sort-type, Ordering)))
Sort-type può essere: NUMERIC, TEXT, FREQUENCY o LOAD_ORDER.
I tipi di ordinamento associati a ciascun Sort-type sono i seguenti:
Sort-type | Tipi di ordinamento consentiti |
---|---|
NUMERIC | ASCENDING, DESCENDING o REVERSE |
TEXT | ASCENDING, A2Z, DESCENDING, REVERSE o Z2A |
FREQUENCY | DESCENDING, REVERSE o ASCENDING |
LOAD_ORDER | ASCENDING, ORIGINAL, DESCENDING o REVERSE |
I tipi di ordinamento REVERSE e DESCENDING sono equivalenti.
Per Sort-type uguale a TEXT, i tipi di ordinamento ASCENDING e A2Z sono equivalenti e DESCENDING, REVERSE e Z2A sono equivalenti.
Per Sort-type uguale a LOAD_ORDER, i tipi di ordinamento ASCENDING e ORIGINAL sono equivalenti.