sql >> Base de Datos >  >> RDS >> Oracle

comparando la fecha con un formato predefinido pl sql

No, no es. Su fecha se muestra en el formato especificado por su NLS_DATE_FORMAT . Yo quiero mostrar si es diferente, cambie este parámetro para su sesión:

alter session set nls_date_format = 'dd-mm-yyyy'

Tenga en cuenta la palabra mostrar . Eso es todo lo que hace. Eso es todo lo que debería considerar hacer. La forma en que se muestra una fecha no afecta de ninguna manera la forma en que se almacena.

Más normalmente, puede usar TO_CHAR() con un modelo de formato apropiado para mostrar una fecha, es decir, to_char(my_date, 'dd-mm-yyyy') . Ya no será una fecha sino un personaje.

No parece que quieras mostrar una fecha como has dicho. Está devolviendo el valor de su función, en cuyo caso me quedaría con lo que tiene. Solo necesita transformar una fecha en un formato apropiado para mostrarla cuando la saque de la base de datos, guárdela siempre como una fecha en la base de datos. Esto a su vez significa que no importa cómo se ve cuando se almacena en la base de datos, simplemente que en realidad es una fecha.