Discutamos cómo puede usar la función de Oracle To_Char () y las alternativas disponibles en otros motores de base de datos.
Oracle to_char () función
La función to_char () le permite convertir un número o un objeto de fecha y hora en una cadena en las bases de datos Oracle.
Las sintaxis disponibles son como se muestra a continuación:
to_char_number :: =La función tomará un número en la primera sintaxis y la convertirá en un tipo VARCHAR2. El número especificado en este caso puede ser el número de tipo, binary_float o binary_double.
Podemos ilustrar un ejemplo como se muestra a continuación:
SELECCIONAREl ejemplo anterior convertirá el número 1000 en una cadena especificada en el FMT. Puede consultar los modelos de formato Oracle para obtener más información.
El código anterior debe devolver la salida como:
También puede convertir un número en una cadena con ceros como se muestra en el ejemplo a continuación:
SELECCIONARLo anterior debería regresar:
To_char - dateTime
El segundo uso de la función To_Char en Oracle es convertir una DataTime en una cadena. La función toma el objeto de fecha y hora de la fecha de tipo, la marca de tiempo, la marca de tiempo con la zona horaria, etc.
La función luego convertirá el valor especificado en un tipo VARCHAR2.
Podemos ilustrar un uso de ejemplo como se muestra a continuación:
SELECCIONAREl ejemplo anterior debe convertir el valor de la función Sysdate en una cadena siguiendo el formato especificado de YYYY-MM-DD.
La salida es como se muestra a continuación:
Puede especificar otras opciones de formato como se muestra en el recurso a continuación.
https: // documentos.oráculo.com/cd/b19306_01/servidor.102/B14200/SQL_ELEMENTS004.HTM#i34510
Por ejemplo, para convertir el valor anterior en formato de fecha larga, podemos ejecutar:
SELECCIONAREl código anterior debería devolver:
Función de reparto SQL
Notará que otros motores de base de datos no proporcionan la función To_Char. Sin embargo, podemos usar el Cast () del SQL estándar para convertir un valor en una cadena.
La sintaxis de la función es como se muestra:
Cast (Expression como String [format_clause [en la zona horaria TIMEZone_Expr]]))La función de reparto le permitirá convertir un valor en un tipo de cadena. Entonces, por ejemplo, para convertir un número en una cadena, podemos hacer:
Seleccione Cast (100 como Varchar);El código anterior debe convertir el entero en Varchar como se muestra:
vararSi el especificado no se puede convertir al tipo de destino, la función devolverá un error.
Un ejemplo es como se muestra:
Seleccione Cast ('Hola!' COMO ENTERO);En el ejemplo anterior, intentamos convertir la cadena HI a un entero. Desafortunadamente, esto dará como resultado un error como se muestra a continuación:
Error: sintaxis de entrada no válida para Escriba entero: “Hola!"
NOTA: El mensaje de error puede diferir según el motor de su base de datos de destino.
También puede usar la función de reparto para convertir un objeto de fecha y hora en una cadena. Considere el ejemplo ilustrado que se muestra a continuación:
Seleccione Cast (ahora () como Varchar);La consulta anterior debe regresar:
ahoraComo puede ver, la función de reparto convierte el valor de la función ahora () en una cadena.
Conclusión
Para este artículo, aprendió cómo usar la función To_Char () para convertir un número o de fecha y hora en una cadena utilizando el motor de la base de datos Oracle. También cubrimos cómo convertir de un tipo a otro usando la función Cast () en SQL estándar.
Gracias por leer!!