Utilizzo dei file JSON
Caricamento dei da file JSON in Qlik Cloud.
È possibile caricare i dati dai file JSON come qualsiasi altro file di dati supportato da Qlik Cloud. Per ulteriori informazioni, vedere Caricamento di dati da file.
È inoltre possibile caricare i dati da un file JSON nello script di caricamento con il comando LOAD. Ad esempio:
Per ulteriori informazioni, vedere Load.
Le istruzioni LOAD possono filtrare o riordinare i campi elencando quelli desiderati nell'elenco dei campi anziché usare il carattere jolly. Ad esempio: LOAD a.b, b.c FROM […] (json);. I campi non esistenti non generano errori.
Caricamento di oggetti annidati da JSON
Se un valore è un oggetto, i membri di tale oggetto vengono utilizzati per estendere la tabella con campi aggiuntivi. Ogni nome di campo è una combinazione di padre e figlio. Ad esempio, il file JSON sottostante contiene oggetti annidati:
[
{"name":{"first":"Alice","last":"Stephenson"}},
{"name":{"first":"Bob"}},
{"name":{"last":"Roberts"}}
]
Quando si effettua il caricamento con LOAD * FROM [lib://DataFiles/example.json] (json);, il risultato è la seguente tabella di dati:
name.first | name.last |
---|---|
Alice | Stephenson |
Bob | null |
null | Roberts |
Caricamento di tabelle multiple
I dati JSON con matrici devono essere caricati utilizzando più istruzioni LOAD. Il contenuto della matrice viene sottoposto a hash e utilizzato come chiave per collegare le tabelle.
Ad esempio, il file JSON riportato di seguito dispone di più tabelle.
[
{"a":[1,2],"b":[3,4]},
{"a":[2,3],"b":[4,5]}
]
Per caricarlo, è necessario utilizzare la seguente istruzione LOAD:
L'identificatore table is è il percorso dell'iteratore per la sottotabella. Il risultato sono le seguenti tabelle di dati:
%Key_a | %Key_b |
---|---|
<hash of [1,2]> | <hash of [3,5]> |
<hash of [2,3]> | <hash of [4,5]> |
%Key_a | a..@1 |
---|---|
<hash of [1,2]> | 1 |
<hash of [1,2]> | 2 |
<hash of [2,3]> | 2 |
<hash of [2,3]> | 3 |
%Key_b | b..@1 |
---|---|
<hash of [3,5]> | 3 |
<hash of [3,5]> | 4 |
<hash of [4,5]> | 4 |
<hash of [4,5]> | 5 |
Se i dati contengono più matrici con contenuto identico, utilizzare la parola chiave DISTINCT nelle istruzioni di caricamento nella sottotabella. Ad esempio: LOAD DISTINCT * FROM [lib://DataFiles/Sales.json] (json, all tables);
Visualizzazione delle matrici
L'elenco dei campi può essere utilizzato quando si caricano i dati per visualizzare le matrici che, in caso contrario, verrebbero caricate come sottotabelle. Per esempio
[
{"pos":[1,2,3]},
{"pos":[4,5,6]}
]
Per completare il caricamento, è necessario utilizzare la seguente istruzione LOAD:
Il risultato è la seguente tabella.
x | y | z |
---|---|---|
1 | 2 | 3 |
4 | 5 | 6 |
Caricamento di tutte le tabelle
È possibile completare il caricamento di tutte le tabelle specificando tutte le tabelle anziché Table is. Ad esempio:
Limitazioni
I file JSON hanno le seguenti limitazioni:
-
Una singola istruzione LOAD da un file JSON può caricare al massimo i seguenti elementi:
-
5.000 campi
-
1.000 tabelle
-