Las fechas y las cadenas son algunos de los tipos de datos más comunes con los que interactuará cuando trabaje con bases de datos. Por lo tanto, no es sorprendente que encuentre un escenario en el que necesite convertir una cadena dada literal en un tipo de fecha.
Este tutorial tiene como objetivo mostrarle cómo usar la función To_Date () en Oracle para realizar eso.
Función orale to_date ()
La función to_date () en Oracle le permite convertir una fecha de cadena dada literal en un tipo de fecha.
La sintaxis de la función se puede expresar en el fragmento a continuación:
To_date (char [, fmt [, 'nlsparam']])
La función acepta tres argumentos principales:
Si el formato es Julian, representado como J, entonces el valor de entrada debe ser un tipo entero.
El valor de entrada puede estar compuesto por los siguientes formatos.
Puede explorar nuestro tutorial sobre el formato de fecha de Oracle para obtener más información sobre los diversos formatos de datos.
C. nlsparam - Finalmente, el parámetro NLSPARAM se usa para especificar el lenguaje para los datos y el mes en la cadena. El formato es nls_date_format = idioma. Tenga en cuenta que este es un parámetro opcional, y Oracle va a la forma predeterminada del idioma predeterminado de su sesión.
Uso de la función de ejemplo
Los siguientes son ejemplos de la función To_Date en la base de datos Oracle:
Ejemplo 1 - Conversión básica
El siguiente ejemplo demuestra cómo usar la función To_Date para convertir una cadena de caracteres dada en una fecha.
Seleccione To_Date ('10 de enero 2023', 'Mes DD, aaa yyy')
de dual;
En este caso, convertimos la cadena de fecha dada en un tipo de fecha usando el mes DD, formato yyyy.
Se muestra el valor resultante:
To_date ('enero102023', 'mesdd, yyyy')
2023-01-10
Ejemplo 2 - Convierte la fecha y hora de la fecha tipo
El segundo ejemplo ilustra cómo convertir una cadena de caracteres dada hasta la fecha.
Seleccione To_Date ('10 de enero de 2023, 1:03', 'mes dd, aaa yyy, hh: mi p.METRO.')
de dual;
En este caso, necesitamos especificar el formato de tiempo como HH: MI P.METRO.
La salida resultante es como se muestra:
To_date ('enero10,2023,1: 03', 'Monthdd, aaa yyy, hh: mip.METRO.')
2023-01-10 01:03:00
Ejemplo 3 - Especificar el parámetro del idioma
Considere el ejemplo a continuación demostrando cómo usar la función TO_DATE con el parámetro NLS_DATE_Language.
Seleccione To_Date ('10 de enero de 2023, 1:03', 'mes dd, aaa yyy, hh: mi p.METRO.',' nls_date_language = american ')
de dual;
Esto debería devolver el valor:
2023-01-10 01:03:00
Una vez que cambiamos el lenguaje de la sesión como:
alter session set nls_territory = 'Australia';
Convertir el tiempo.
Seleccione To_Date ('10 de enero de 2023, 1:03', 'mes dd, aaa yyy, hh: mi p.METRO.',' nls_date_language = american ')
de dual;
Conclusión
En esta publicación, exploramos el uso de la función To_Date en la base de datos Oracle para convertir una fecha de entrada dada literal hasta la fecha.