Compartir a través de


Función try_cast

Se aplica a:casilla marcada como sí Databricks SQL casilla marcada como Sí Databricks Runtime 10.4 LTS y versiones posteriores

Devuelve el valor de sourceExpr convertido a targetType si se admite la conversión; de lo contrario, devuelve NULL, siempre que se admita el tipo de sourceExpr a targetType. Si los tipos de destino y origen no son una combinación de conversión válida, se devuelve un error de tipo DATATYPE_MISMATCH. Consulte Devuelve para obtener combinaciones de conversión admitidas.

Sintaxis

try_cast(sourceExpr AS targetType)

Argumentos

  • sourceExpr: cualquier expresión que se pueda convertir.
  • targetType: tipo del resultado.

Devoluciones

El resultado es de tipo targetType.

Esta función es una variante más flexible de lacast función que incluye una descripción detallada.

try_cast difiere de la cast función tolerando las condiciones siguientes siempre y cuando se admita la conversión del tipo de expr a type:

  • Si un valor sourceExpr no cabe en el dominio de targetType, el resultado es NULL en lugar de un error de desbordamiento.
  • Si un valor sourceExpr no tiene el formato correcto o contiene caracteres no válidos, el resultado es NULL en lugar de un error de datos no válido.

La excepción a lo anterior es:

  • Conversión a un campo STRUCT con la propiedad NOT NULL.
  • Conversión a una clave MAP.

Ejemplos

> SELECT try_cast('10' AS INT);
 10

> SELECT try_cast('a' AS INT);
 NULL