RangeSum - funzione dello script e del grafico
RangeSum() restituisce la somma di una scala di valori. Tutti i valori non numerici vengono trattati come 0, a differenza dell'operatore +.
Sintassi:
RangeSum(first_expr[, Expression])
Tipo di dati restituiti: numerico
Argomenti:
L'argomento di questa funzione può contenere funzioni intra-record, che a loro volta restituiscono un elenco di valori.
- first_expr: L'espressione o il campo contenente i dati da sommare.
- Expression: Le espressioni o i campi opzionali contenenti la scala di dati da sommare. È possibile utilizzare più espressioni aggiuntive.
Limiti:
La funzione RangeSum considera tutti i valori non numerici come 0, diversamente dall'operatore +.
Esempi:
Esempio | Risultato |
---|---|
RangeSum (1,2,4) |
Restituisce 7 |
RangeSum (5,'abc') | Restituisce 5 |
RangeSum (null( )) |
Restituisce 0 |
Esempio: (utilizzo dell'espressione)
RangeSum (Above(MyField,0,3))
Restituisce la somma dei tre valori di MyField): dalla riga attuale e dalle due righe che la precedono. Specificando 3 per il terzo argomento, la funzione Above() restituisce tre valori, se il numero di righe che precedono la riga attuale è sufficiente, che vengono considerati come input per la funzione RangeSum().
MyField | RangeSum(Above(MyField,0,3)) |
---|---|
10 | 10 |
2 |
12 |
8 | 20 |
18 | 28 |
5 | 31 |
9 | 32 |
Dati utilizzati negli esempi:
RangeTab:
LOAD * INLINE [
MyField
10
2
8
18
5
9
] ;
Esempio: (in formato tabella)
Aggiungere lo script di esempio al documento ed eseguirlo. Aggiungere quindi a un foglio del documento almeno i campi elencati nella colonna dei risultati per visualizzare il risultato.
RangeTab3:
LOAD recno() as RangeID, Rangesum(Field1,Field2,Field3) as MyRangeSum INLINE [
Field1, Field2, Field3
10,5,6
2,3,7
8,2,8
18,11,9
5,5,9
9,4,2
];
La tabella risultante mostra i valori restituiti da MyRangeSum per ciascun record della tabella.
RangeID | MyRangeSum |
---|---|
1 | 21 |
2 | 12 |
3 | 18 |
4 | 38 |
5 | 19 |
6 | 15 |