Formatos de fechas en Oracle

Repasamos los formatos en los que podemos representar fechas.

Especialmente útil al trabajar con funciones como TO_DATE, TO_CHAR o alterar el nls_date_format a nivel de sessión.

Tabla de formatos

Formato Descripción Resultado
Y Último dígito del año 7
YY Los 2 últimos dígitos del año 17
YYY Los 3 últimos dígitos del año 017
YYYY Año usando 4 dígitos 2017
RR Año usando 2 dígitos 17
YEAR Año escrito en inglés TWENTY SEVENTEEN
MM Mes con 2 dígitos 02
MON Abreviatura del mes con 3 letras FEB
MONTH Nombre del mes en inglés y mayúsculas FEBRUARY
D Día de la semana 5
DD Día del mes (2 dígitos) 07
DDD Día del año 212
DY Abreviatura del nombre del día de 3 letras FRI
DAY Nombre del día en inglés y mayúsculas FRIDAY
W Semana del mes 3
WW Semana del año 43
Q Cuarto del año 1
CC Siglo 10
SCC Lo mismo que CC pero añade «-» si la fecha es antes de Cristo -3
SYYYY Lo mismo que YYYY pero añade «-» si la fecha es antes de Cristo -734
SYEAR Lo mismo que YEAR pero añade «-» si la fecha es antes de Cristo -THIRTY THREE
BC, AD, B.C. , A.D. Añade BC o AD según corresponda AD
J Número de días desde el 31 de Diciembre de 4713 a. C. 1356021
IW Semana standard ISO 32
RM Mes con números romanos II
AM, PM, A.M. , P.M. Indicador de meridiano PM
HH Hora del día 03
HH12 Hora del día 1-12 11
HH24 Hora del día 0-23 14
MI Minuto 0-59 34
SS Segundo 0-59 58
SSSSS Segundos desde la media noche 0-86399 32098
/.,?#! Signos de puntuación, por ejemplo: ‘MM.YY’ 14.10
«literales» Por ejemplo, ‘»Semana» W «de» Month’ Semana 3 de February
 TH DDth 12TH
SP Transcripción de números, por ejemplo, MM Nine
THSP or SPTH Transcripción posicional o numérica, por ejemplo: ‘hh24Spth’ Fourtheenth

Ejemplo

Vamos a alterar nuestra sesión para indicar el formato de fechas que queremos.

Si estamos conectados con el sqlplus, por ejemplo, ejecutamos lo siguiente:


alter session set nls_date_format='dd/mm/yyyy hh24:mi:ss';

Las fechas saldrán con el siguiente formato: 18/12/2017 08:27:17

Un comentario en “Formatos de fechas en Oracle”

  1. Buen día.
    En el siguiente caso me parece que el resultado está invertido:

    /.,?#! | Signos de puntuación, por ejemplo: ‘MM.YY’ | 14.10

    Muchas gracias por la información.
    Saludos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *