# JsonArray Funzione per script e grafici

JsonArray aggrega e concatena i dati JSON.

Sintassi:

JsonArray([DISTINCT][TOTAL] value [, sort\_weight])

Tipo di dati restituiti: duale

Argomenti

| Argomento | Descrizione |
| --- | --- |
| DISTINCT | Se la parola DISTINCT è riportata prima degli argomenti della funzione, i duplicati risultanti dalla valutazione degli argomenti della funzione vengono ignorati. |
| TOTAL | Se la parola TOTAL viene riportata prima degli argomenti della funzione, il calcolo verrà effettuato su tutti i valori possibili dati dalle selezioni correnti e non solo su quelli relativi al valore dimensionale attuale, vale a dire che verranno ignorate le dimensioni del grafico. |
| value | Campo di input. L'espressione contenente i dati da ordinare. Viene trovato il primo valore (il più basso) di sort\_weight dal quale viene determinato il valore corrispondente dell'espressione value. Inserendo un segno meno davanti a sort\_weight, la funzione restituisce invece l'ultimo valore ordinato (il più elevato). |
| sort\_weight | Campo di input. L'espressione contenente i dati da ordinare. Viene trovato il primo valore (il più basso) di sort\_weight dal quale viene determinato il valore corrispondente dell'espressione value. Inserendo un segno meno davanti a sort\_weight, la funzione restituisce invece l'ultimo valore ordinato (il più elevato). |

Esempio:

Il seguente script di caricamento carica e aggrega i dati con JsonArray.

```
Data:
LOAD Id,
	JsonArray(ValueOrNull) AS Json,
	JsonArray(DISTINCT ValueOrNull) AS JsonDistinct,
	JsonArray(ValueOrNull, Order) AS JsonSorted
GROUP BY Id;

LOAD *, If(Value='-',Null(),Value) AS ValueOrNull;

LOAD * INLINE '
	Id | Value          | Order
	1  | 123            | 1
	2  | "json text"    | 2
	2  | normal text    | 1
	3  | [1,2,3]        | 3
	3  | {"name":"abc"} | 2
	3  | [1,2,3]        | 1
	4  | 1              | 1
	4  | 2 and text     | 2
	4  |                | 3
	4  | -              | 4
	' (delimiter is '|');
```

Il risultato è la seguente tabella dati:

Risultati

| ID | JSON | JSON distinto | JSON ordinato |
| --- | --- | --- | --- |
| 1 | [123] | [123] | [123] |
| 2 | ["testo json","testo normale"] | ["testo json","testo normale"] | ["testo normale","testo json"] |
| 3 | [[1,2,3],[1,2,3],{"name":"abc"}] | [[1,2,3],{"name":"abc"}] | [[1,2,3],{"name":"abc"},[1,2,3]] |
| 4 | [1,"2 e testo",""] | [1,"2 e testo",""] | [1,"2 e testo",""] |