Versão especial da função PARSE_JSON que retorna NULL em vez de gerar erro quando a análise falha.
Limites
Compatível apenas com o Ververica Runtime (VVR) 11.1.0 ou posterior.
Sintaxe
VARIANT TRY_PARSE_JSON(VARCHAR jsonStr [, BOOLEAN allowDuplicateKeys])
Argumentos
|
Argumento |
Tipo de dados |
Descrição |
|
|
VARCHAR |
String JSON para análise. |
|
|
BOOLEAN |
(Opcional) Indica se chaves duplicadas são permitidas na string JSON. |
Retorno
Retorna um valor VARIANT contendo um documento JSON.
Retorna NULL nas seguintes situações:
A entrada
jsonStré NULL.A string JSON é inválida e não pode ser analisada.
allowDuplicateKeyséfalse(padrão) e a string JSON contém chaves duplicadas.
Comparação entre PARSE_JSON e TRY_PARSE_JSON
|
Função |
Mecanismo de tratamento de erros |
Valor de retorno para entrada JSON inválida |
Cenários adequados |
|
|
Gera erros explicitamente. |
Retorna um erro. |
Validação rigorosa de entrada. |
|
|
Tolerante a erros. |
Retorna NULL. |
Tolerância a entradas inválidas. |
Exemplo
A tabela T1 contém os seguintes dados de teste:
|
jsonString (VARCHAR) |
|
|
|
|
Execute a seguinte consulta:
SELECT TRY_PARSE_JSON(jsonString) AS v
FROM T1;
Resultados:
|
v (VARIANT) |
|
|
|
NULL |
A segunda linha contém JSON inválido ({), portanto TRY_PARSE_JSON retorna NULL. O uso de PARSE_JSON causaria falha na consulta com um erro.