Uso delle istruzioni OVER nelle colonne calcolate

È possibile effettuare calcoli sui dati e visualizzare i risultati sotto forma di valori in una nuova colonna aggiunta alla tabella dati. Nell'espressione utilizzata per il calcolo, è possibile utilizzare l'istruzione OVER. Tuttavia, l'uso dell'istruzione OVER nelle colonne calcolate funziona in maniera diversa rispetto all'uso dell'istruzione nelle espressioni personalizzate. Nelle colonne calcolate, l'espressione OVER è utilizzata per calcolare valori separati fissi per gruppi diversi. L'espressione OVER può comportare la suddivisione dei dati in un numero minore di record.

Nota: Le colonne calcolate vengono sempre calcolate su tutti i valori nella colonna, indipendentemente da come si filtrano i dati.

Quando si lavora con le colonne calcolate, non ci sono assi disponibili da esplorare, come nel caso delle espressioni personalizzate. Si utilizza invece l'espressione OVER per fare riferimento a una colonna dati (o a una gerarchia).

Nella tabella dati seguente, l'espressione

Sum([Sales]) OVER ([Fruit])

è utilizzata per i calcoli dei valori nella colonna aggiunta:



In questo modo, per ciascuna riga, la somma totale delle vendite per il tipo di frutta in questione viene presentata nella nuova colonna. Ad esempio, dato che le vendite totali di Apples è 200 (30+70+100), questo valore viene visualizzato in ogni riga "Apples". L'effetto è la suddivisione in un numero minore di valori (200 e 100).
Nota: I valori della nuova colonna non cambieranno quando i dati verranno filtrati in un secondo momento. Se ad esempio la riga di dati in prima posizione viene esclusa mediante filtro, i valori della colonna calcolata per le righe "Apples" saranno sempre 200.

Esempio esteso

La colonna calcolata con meno record potrebbe non essere molto utile come colonna autonoma. Aggiungiamo però un'altra colonna, dove una parte dell'espressione utilizzata è l'espressione precedente:

[Sales] / (Sum([Sales]) OVER ([Fruit]))



Questa espressione calcola il contributo relativo della transazione di ogni vendita sul totale delle vendite negli anni, nell'ambito del rispettivo tipo di frutta. Ad esempio, 15% (30/200) delle vendite di mele totali nel 2015, 35% (70/200) nel 2016 e il resto, il 50% (100/200), nel 2017.

Nel grafico a barre seguente, la colonna calcolata è selezionata sull'asse dei valori utilizzando l'aggregazione Sum.



Infatti il risultato è lo stesso di quello che si ottiene utilizzando l'opzione 100% barre impilate in un grafico a barre che mostra Sum([Sales]).

Combinazione di OVER con un metodi di navigazione relativo ai nodi in una colonna calcolata

Nell'espressione utilizzata per il calcolo di una colonna, è possibile utilizzare l'istruzione OVER in combinazione con un metodo di navigazione relativo ai nodi. Questo semplice esempio offre un'idea di come utilizzare uno dei metodi, Previous().

La tabella dati elenca i pesi misurati ogni settimana per un neonato, visualizzati in un grafico a linee.





Si presupponga di essere interessati alla crescita settimanale. Questa può essere calcolata utilizzando l'espressione:

[Weight (g)] - Sum([Weight (g)]) OVER (Previous([Week]))

I risultati possono essere visualizzati nella tabella dati e nel grafico a barre seguenti.