Función CAN_JSON_PARSE - Amazon Redshift

Función CAN_JSON_PARSE

La función CAN_JSON_PARSE analiza los datos en formato JSON y devuelve true si el resultado se puede convertir en un valor SUPER mediante la función JSON_PARSE.

Sintaxis

CAN_JSON_PARSE( {json_string | binary_value} )

Argumentos

json_string

Una expresión que devuelve objetos JSON serializados en el formato VARCHAR.

binary_value

Valor binario de tipo VARBYTE.

Tipo de retorno

BOOLEAN

Notas de uso

  • CAN_JSON_PARSE devuelve el valor false para cadenas vacías. Devuelve NULL si el argumento de entrada es nulo.

Ejemplos

En el siguiente ejemplo se muestra CAN_JSON_PARSE en ejecución en una matriz JSON correctamente formada mediante una condición CASE. Devuelve el valor true, por lo que Amazon Redshift ejecuta la función JSON_PARSE en el valor de ejemplo.

SELECT CASE WHEN CAN_JSON_PARSE('[10001,10002,"abc"]') THEN JSON_PARSE('[10001,10002,"abc"]') END; case --------------------- '[10001,10002,"abc"]'

En el siguiente ejemplo se muestra CAN_JSON_PARSE en ejecución en un valor que no tiene formato JSON mediante una condición CASE. Devuelve el valor false, por lo que Amazon Redshift devuelve en su lugar el segmento de la cláusula ELSE de la condición CASE.

SELECT CASE WHEN CAN_JSON_PARSE('This is a string.') THEN JSON_PARSE('This is a string.') ELSE 'This is not JSON.' END; case --------------------- "This is not JSON."