

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# parseJson
<a name="parseJson-function"></a>

Utilizzare `parseJson` per estrarre i valori da un oggetto JSON. 

Se il set di dati è archiviato in QuickSPICE, è possibile utilizzarlo `parseJson` durante la preparazione di un set di dati, ma non nei campi calcolati durante l'analisi.

Per le query dirette, è possibile utilizzare `parseJson` sia durante la preparazione dei dati che durante l'analisi. La funzione `parseJson` si applica alle stringhe o ai tipi di dati JSON nativi, a seconda del dialetto, come mostrato nella seguente tabella.


| Dialetto | Tipo | 
| --- | --- | 
| PostgreSQL | JSON | 
| Amazon Redshift | Stringa | 
| Microsoft SQL Server | Stringa | 
| MySQL | JSON | 
| Teradata | JSON | 
| Oracle | Stringa | 
| Presto | Stringa | 
| Snowflake | Oggetto e array con tipo di dati semi-strutturato | 
| Hive | Stringa | 

## Sintassi
<a name="parseJson-function-syntax"></a>

```
parseJson(fieldName, path)
```

## Arguments (Argomenti)
<a name="parseJson-function-arguments"></a>

 *nome campo*   
Il campo contenente l'oggetto JSON che si desidera analizzare.

 *path*   
Il percorso dell'elemento dati che si desidera analizzare dall'oggetto JSON. Nell'argomento del percorso sono supportati solo lettere, numeri e spazi. La sintassi valida del percorso include:  
+ *\$1*: oggetto root
+ *.*: operatore secondario
+ *[ ]*: operatore Subscript per array

## Tipo restituito
<a name="parseJson-function-return-type"></a>

Stringa

## Esempio
<a name="parseJson-function-example-query"></a>

L'esempio seguente valuta l'oggetto JSON in entrata per recuperare un valore per la quantità di voci. Utilizzandolo durante la preparazione dei dati, è possibile creare una tabella che non include JSON.

```
parseJson({jsonField}, “$.items.qty”)
```

Di seguito è mostrato l'oggetto JSON.

```
{
    "customer": "John Doe",
    "items": {
        "product": "Beer",
        "qty": 6
    },
    "list1": [
        "val1",
        "val2"
    ],
    "list2": [
        {
            "list21key1": "list1value1"
        }
    ]
}
```

In questo esempio, viene restituito il seguente valore.

```
6
```

## Esempio
<a name="parseJson-function-example"></a>

L'esempio seguente valuta `JSONObject1` per estrarre la prima coppia chiave-valore (KVP), etichettata `"State"`, e assegnare il valore al campo calcolato che si sta creando.

```
parseJson(JSONObject1, “$.state”)
```

I seguenti sono i valori di campo forniti.

```
JSONObject1
-----------
{"State":"New York","Product":"Produce","Date Sold":"1/16/2018","Sales Amount":"$3423.39"}
{"State":"North Carolina","Product":"Bakery Products","Date Sold":"2/1/2018","Sales Amount":"$3226.42"}
{"State":"Utah","Product":"Water","Date Sold":"4/24/2018","Sales Amount":"$7001.52"}
```

Per questi valori di campo vengono restituite le seguenti righe.

```
New York
North Carolina
Utah
```