Cadena de Oracle hasta la fecha

Cadena De Oracle Hasta La Fecha



Este tutorial le mostrará cómo usar la función to_date para convertir una cadena de entrada determinada en un tipo de datos de fecha.

Función Orale to_date()

La función to_date() en Oracle le permite convertir un literal de fecha de cadena dada en un tipo de fecha.







La sintaxis de la función:



TO_DATE(char [, fmt [, 'nlsparam'] ])

La función acepta tres argumentos principales:



  • El primer argumento es char, que define la cadena de fecha de entrada. El valor de entrada puede ser CHAR, VARCHAR2, NCHAR o NVARCHAR2.
  • fmt: el segundo parámetro es fmt. Este parámetro define el formato del modelo de fecha y hora del valor de entrada. Puede omitir este parámetro si el valor de entrada sigue el formato predeterminado de DD-MON-YY, por ejemplo, 01-ENE-2022.

Si el formato es juliano, representado como J, el valor de entrada debe ser de tipo entero.





El valor de entrada se puede incluir en los siguientes formatos:



  • nlsparam – Por último, el parámetro nlsparam se usa para especificar el idioma de los datos y el mes en la cadena. El formato es NLS_DATE_FORMAT = idioma. Oracle utilizará por defecto el idioma predeterminado de su sesión.

Ejemplo de uso de funciones

Los siguientes son ejemplos de la función to_date en la base de datos de Oracle:

Ejemplo 1: conversión básica

El siguiente ejemplo muestra cómo usar la función to_date para convertir una cadena de caracteres determinada en una fecha.

select to_date('10 de enero de 2023', 'Mes dd, AAAA')
de doble;

En este caso, convertimos la cadena de fecha dada a un tipo de fecha usando el formato Month dd, YYYY.

El valor resultante se muestra:

TO_DATE('10 DE ENERO DE 2023','MESHDD,AAAA')
2023-01-10

Ejemplo 2: convertir fecha y hora en tipo de fecha

El segundo ejemplo ilustra cómo convertir una cadena de caracteres dada a la fecha.

select to_date('10 de enero de 2023, 1:03', 'Mes dd, AAAA, HH:MI P.M.')
de dual;[/cc]

En este caso, necesitamos especificar el formato de hora como HH:MI P.M.

La salida resultante es como se muestra:

TO_DATE('10 DE ENERO DE 2023,1:03','MESHDD,AAAA,HH:MIP.M.')
2023-01-10 01:03:00

Ejemplo 3: Especificación del parámetro de idioma

Considere el siguiente ejemplo que demuestra cómo usar la función to_date con el parámetro nls_date_language.

select to_date('10 de enero de 2023, 1:03', 'Mes dd, AAAA, HH:MI P.M.', 'nls_date_language=American')
de doble;

Esto debería devolver el valor:

2023-01-10 01:03:00

Una vez que cambiamos el idioma de la sesión como:

modificar el conjunto de sesiones nls_territory = 'Australia';

Convierte el tiempo.

select to_date('10 de enero de 2023, 1:03', 'Mes dd, AAAA, HH:MI P.M.', 'nls_date_language=American')
de doble;

Conclusión

En esta publicación, exploramos el uso de la función to_date en la base de datos de Oracle para convertir un literal de fecha de entrada dado en un tipo de fecha.