Ga naar hoofdinhoud Ga naar aanvullende inhoud

Werken met JSON-bestanden

Gegevens worden geladen uit JSON-bestanden in Qlik Cloud.

U kunt gegevens laden vanuit JSON‑bestanden net als andere gegevensbestanden die door Qlik Cloud worden ondersteund. Ga voor meer informatie naar Gegevens uit bestanden laden.

U kunt gegevens laden vanuit een JSON-bestand in het load-script met de opdracht LOAD. Bijvoorbeeld:

LOAD * from [lib://DataFiles/xyz.json] (json);

Ga voor meer informatie naar Load.

Load-instructies kunnen de velden filteren of opnieuw ordenen door de gewenste velden in de lijst op te nemen in plaats van het jokerteken te gebruiken. Bijvoorbeeld: LOAD a.b, b.c FROM […] (json);. Niet-bestaande velden veroorzaken geen fout.

Geneste objecten laden vanuit JSON

Als een waarde een object is, dan worden de leden van dat object gebruikt om de tabel uit te breiden met extra velden. Elke veldnaam is een combinatie van het bovenliggende en onderliggende item. Onderstaande JSON bevat bijvoorbeeld geneste objecten:


[
	{"name":{"first":"Alice","last":"Stephenson"}},
	{"name":{"first":"Bob"}},
	{"name":{"last":"Roberts"}}
]

Als deze wordt geladen met LOAD * FROM [lib://DataFiles/example.json] (json);, resulteert dit in de volgende tabel met gegevens:

Voorbeeld geneste gegevenstabel
name.first name.last
Alice Stephenson
Bob null
null Roberts

Meerdere tabellen laden

JSON-gegevens met matrices moeten worden geladen met behulp van meerdere load-instructies. De inhoud van de matrix wordt gehasht en gebruikt als sleutel om de tabellen te koppelen.

Onderstaande JSON heeft bijvoorbeeld meerdere tabellen.


[
	{"a":[1,2],"b":[3,4]},
	{"a":[2,3],"b":[4,5]}
]

Dit moet worden geladen door de volgende load-instructie:

LOAD * FROM [...] (json); LOAD * FROM [...] (json, table is [/*/a]); LOAD * FROM [...] (json, table is [/*/b]);

De specificatie table is is het pad naar de iterator voor de subtabel. Dit resulteert in de volgende tabellen met gegevens:

Tabel 1
%Key_a %Key_b
<hash of [1,2]> <hash of [3,5]>
<hash of [2,3]> <hash of [4,5]>
Tabel 2
%Key_a a..@1
<hash of [1,2]> 1
<hash of [1,2]> 2
<hash of [2,3]> 2
<hash of [2,3]> 3
Tabel 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
Informatie

Als uw gegevens meerdere matrices met identieke inhoud bevatten, gebruik dan het trefwoord DISTINCT in de load-instructies voor subtabellen. Bijvoorbeeld: LOAD DISTINCT * FROM [lib://DataFiles/Sales.json] (json, all tables);

Weergeven in matrices

De lijst met velden kan worden gebruikt bij het laden van gegevens om peek uit te voeren in matrices die anders als subtabellen zouden worden geladen. Voorbeeld

[
	{"pos":[1,2,3]},
	{"pos":[4,5,6]}
]

Dit kan worden geladen door de volgende load-instructie:

LOAD pos.0 AS x, pos.1 AS y, pos.2 AS z FROM […] (json);.

Dit resulteert in de volgende tabel:

x y z
1 2 3
4 5 6

Alle tabellen laden

U kunt een lading maken van alle tabellen door alle tabellen op te geven in plaats van Tabel is. Bijvoorbeeld:

LOAD * FROM [lib://DataFiles/Sales.json] (json, all tables);

Beperkingen

JSON-bestanden hebben de volgende beperkingen:

  • Eén enkele LOAD‑instructie van een JSON kan een maximum van het volgende laden: 

    • 5.000 velden

    • 1.000 tabellen

Was deze pagina nuttig?

Als u problemen ervaart op deze pagina of de inhoud onjuist is – een typfout, een ontbrekende stap of een technische fout – laat het ons weten zodat we dit kunnen verbeteren!