# Arbeta med JSON-filer

Ladda data från JSON-filer i Qlik Sense Enterprise on Windows.

Du kan ladda data från JSON-filer precis som alla andra datafiler som stöds av Qlik Sense. Mer information finns i [Läsa in data från filer](https://help.qlik.com/sv-SE/sense/November2025/Subsystems/Hub/Content/Sense_Hub/DataSource/load-data-from-files.htm).

Du kan ladda data från en JSON-fil i laddningsskriptet med LOAD-kommandot. Exempel:

```
LOAD  * from xyz.json (json);
```

Mer information finns i [Load](https://help.qlik.com/sv-SE/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm).

LOAD-satser kan filtrera eller omordna fälten genom att lista önskat i fältlistan istället för att använda jokertecknet. Till exempel: `LOAD a.b, b.c FROM […] (json);`. Icke-existerande fält kommer inte att utlösa ett fel.

## Ladda nästlade objekt från JSON

Om ett värde är ett objekt används medlemmarna i det objektet för att utöka tabellen med ytterligare fält. Varje fältnamn är en kombination av överordnat och underordnat fält. Exempelvis innehåller JSON nedan nästlade objekt:

```

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

Laddning från `LOAD * FROM [lib://AttachedFiles/example.json] (json);` resulterar i följande datatabell:

Exempel på nästlad datatabell

| name.first | name.last |
| --- | --- |
| Alice | Stephenson |
| Bob | null |
| null | Roberts |

## Ladda flera tabeller

JSON-data med matriser måste laddas med flera LOAD-satser. Innehållet i matrisen hashas och används som en nyckel för att länka till tabellerna.

Exempelvis har JSON nedan flera tabeller.

```

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

Detta skulle behöva laddas med följande LOAD-sats:

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

table is-specifikatorn är sökvägen till iteratorn för subtabellen. Detta resulterar i följande datatabell:

Tabell 1

| %Key\_a | %Key\_b |
| --- | --- |
| &lt;hash of [1,2]&gt; | &lt;hash of [3,5]&gt; |
| &lt;hash of [2,3]&gt; | &lt;hash of [4,5]&gt; |

Tabell 2

| %Key\_a | a..@1 |
| --- | --- |
| &lt;hash of [1,2]&gt; | 1 |
| &lt;hash of [1,2]&gt; | 2 |
| &lt;hash of [2,3]&gt; | 2 |
| &lt;hash of [2,3]&gt; | 3 |

Tabell 3

| %Key\_b | b..@1 |
| --- | --- |
| &lt;hash of [3,5]&gt; | 3 |
| &lt;hash of [3,5]&gt; | 4 |
| &lt;hash of [4,5]&gt; | 4 |
| &lt;hash of [4,5]&gt; | 5 |

Anteckning om informationOm dina data innehåller flera matriser med identiskt innehåll, använd nyckelordet DISTINCT i undertabellens LOAD-satser. Till exempel: LOAD DISTINCT \* FROM [lib://AttachedFiles/Sales.json] (json, all tables);

### Kika in i matriser

Fältlistan kan användas när du laddar data för att kika in i matriser som annars skulle laddas som undertabeller. Till exempel

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

Detta kan laddas med följande LOAD-sats:

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

Detta resulterar i följande tabell:

| x | y | z |
| --- | --- | --- |
| 1 | 2 | 3 |
| 4 | 5 | 6 |

### Alla tabeller laddas

Du kan göra en laddning av alla tabeller genom att ange all tables istället för Table is. Exempel:

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

#### Begränsningar

JSON-filer har följande begränsningar:

* En enda LOAD-sats från en JSON kan ladda max av följande:

  * 5 000 fält

  * 1 000 tabeller