La conversión es una tarea frecuente para programadores e ingenieros de bases de datos. Este artículo explorará cómo convertir un tipo VARCHAR en un tipo numérico en SQL estándar.
Debe tenerse en cuenta que cuando decimos SQL estándar, nos referimos a técnicas y métodos adoptados universalmente por motores de base de datos relacionales.
Método de reparto de SQL
En SQL estándar, Typecasting se logra mediante el uso de la función Cast (). La sintaxis de la función es como se muestra:
Cast (expresión como t_type [(longitud)]);La función toma tres parámetros principales:
SQL Convertir Varchar a int
Considere el ejemplo a continuación que convierte el tipo VARCHAR en un tipo INT64.
Seleccione Cast ('344' como int64);La consulta de ejemplo debe devolver el valor convertido a int como se muestra:
int4SQL Convertir Varchar a Numérico
Para convertir un tipo VARCHAR en un tipo numérico, cambie el tipo de destino como numérico o bignumérico como se muestra en el siguiente ejemplo:
Seleccione Cast ('344' como numérico) como numérico;Las consultas anteriores deben devolver el valor especificado convertido a numéricos y grandes numéricos.
Tenga en cuenta que para garantizar que el motor de su base de datos admita su tipo de destino; De lo contrario, devolverá un error.
SQL Convertir Varchar a Float
Si tiene Varchar de punto flotante, puede convertirlo en un tipo de flotación, como se muestra en el siguiente ejemplo:
Seleccione Cast ('3.14159 'como flotante) como flotante;El código debe devolver el tipo de flotación del Varchar especificado. La salida de ejemplo es como se muestra a continuación:
FLOTARCasting seguro SQL
¿Se ha preguntado qué sucede si intenta convertir una cadena no numérica a un tipo numérico?? Considere el ejemplo a continuación:
Seleccione Cast ('Hello' como int64) como var;Si intenta ejecutar la consulta anterior, fallará ya que el tipo Varchar especificado no se puede convertir a int.
Para evitar que la consulta falle si la conversión no es compatible, podemos usar el método safe_cast.
La función se comporta de manera similar a la función de reparto, excepto que no falla si la conversión falla. En su lugar, devuelve nulo como se muestra en el siguiente ejemplo:
Seleccione SAFE_Cast ('Hello' como int64) como nan;En lugar de un error, la consulta anterior debe devolver:
"Nan": nuloNOTA: El método safe_cast es compatible en SQL estándar. Algunos motores de bases de datos pueden implementar los procedimientos de manera diferente. Por ejemplo, en SQL Server, la función Safe_cast () se renombra a Try_Cast o Try_Convert.
Conclusión
En este tutorial, discutimos cómo realizar tipos de tipos en SQL estándar. Por ejemplo, discutimos la conversión de Varchar a int64, numérico, bignumérico y float64. También cubrimos cómo realizar un lanzamiento seguro para escenarios en los que el tipo de clasificación puede resultar en un error.