Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:
Databricks SQL
Databricks Runtime
Extrai um objeto JSON do path.
Sugestão
Para novo código, Azure Databricks recomenda usar o tipo de dados VARIANT com o operador : para consultar dados JSON.
VARIANT oferece melhor desempenho de leitura e escrita, acesso a campos com sensibilidade a maiúsculas minúsculas e semântica mais clara do que a análise JSON baseada em strings.
Veja Como é que a variante é diferente das cadeias JSON?.
Sintaxe
get_json_object(expr, path)
Argumentos
-
expr: Uma expressão STRING contendo JSON bem formado. -
path: Um literal STRING contendo uma expressão JSONPath enraizada em$. Consulte Notas para sintaxe suportada e Exemplos para padrões comuns.
Devoluções
UMA STRING.
Se o objeto não puder ser encontrado, null será retornado.
Exemplos
-- Extract a top-level field
> SELECT get_json_object('{"a":"b"}', '$.a');
b
-- Extract a nested field
> SELECT get_json_object('{"a":{"b":"c"}}', '$.a.b');
c
-- Extract an array element by index
> SELECT get_json_object('{"items":["apple","pear"]}', '$.items[0]');
apple
-- Extract a field whose name contains a space
> SELECT get_json_object('{"first name":"Ada"}', '$["first name"]');
Ada
-- Extract a field whose name contains a dot, using bracket notation with double quotes
> SELECT get_json_object('{"ids":{"a.b":"42"}}', '$.ids["a.b"]');
42
-- Extract a field from every element of an array
> SELECT get_json_object('{"items":[{"n":1},{"n":2}]}', '$.items[*].n');
[1,2]
-- Returns NULL when the path does not match
> SELECT get_json_object('{"a":"b"}', '$.missing');
NULL
Notes
get_json_object usa a sintaxe JSONPath enraizada em $. O acesso a campos por notação de pontos (.field) é indistinto a maiúsculas e maiúsculas; a notação entre parênteses (['field'] ou ["field"]) é distinta a maiúsculas e minúsculas. Isto difere da expressão de caminho Azure Databricks JSON usada com o operador : para consultar as cadeias VARIANT e JSON, que é documentada separadamente.