

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

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

Use `parseJson` para extrair valores de um objeto JSON. 

Se seu conjunto de dados estiver armazenado no QuickSPICE, você poderá usá-lo `parseJson` ao preparar um conjunto de dados, mas não em campos calculados durante a análise.

Para consultas diretas, você pode usar `parseJson` durante a preparação de dados e a análise. A função `parseJson` aplica-se aos tipos de dados JSON nativos ou a strings, dependendo do dialeto, conforme mostrado na tabela a seguir.


| Dialeto | Tipo | 
| --- | --- | 
| PostgreSQL | JSON | 
| banco de dados de origem | String | 
| Microsoft SQL Server | String | 
| MySQL | JSON | 
| Teradata | JSON | 
| Oracle | String | 
| Presto | String | 
| Snowflake | Objeto de tipo de dados semiestruturado e matriz | 
| Hive | String | 

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

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

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

 *fieldName*   
O campo que contém o objeto JSON que você deseja analisar.

 *path*   
O caminho para o elemento de dados que você deseja analisar a partir do objeto JSON. Somente letras, números e espaços em branco são compatíveis com o argumento de caminho. A sintaxe do caminho válido inclui:  
+ *\$1*: objeto raiz
+ *.*: operador secundário.
+ *[ ]*: operador de subscrito para matriz

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

String

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

O exemplo a seguir avalia um JSON de entrada para recuperar um valor de quantidade do item. Ao usar isso durante a preparação de dados, você pode criar uma tabela a partir do JSON.

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

Veja o JSON a seguir.

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

Neste exemplo, o seguinte valor é retornado.

```
6
```

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

O exemplo a seguir avalia o `JSONObject1` para extrair o primeiro par de chave-valor (KVP), rotulado `"State"`, e atribuir o valor ao campo calculado que você está criando.

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

A seguir estão os valores de campo especificados.

```
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"}
```

Para esses valores de campo, as seguintes linhas são retornadas.

```
New York
North Carolina
Utah
```