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
Use parseJson
para extrair valores de um objeto JSON.
Se o seu conjunto de dados estiver armazenado no QuickSight SPICE, você pode usar 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 |
Amazon Redshift | 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
parseJson(
fieldName
,path
)
Argumentos
- 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. A sintaxe do caminho válido inclui:
-
$: objeto raiz
-
.: operador secundário.
-
[ ]: operador de subscrito para matriz
-
Tipo de retorno
String
Exemplo
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
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