Ir al contenido principal

La función TO_DATE ok

La función TO_DATE devuelve un elemento de tipo DATE. Cadenas de caracteres convertidos a fechas pueden contener todo o solo un subconjunto de elementos que conforman una fecha. Cuando una cadena de caracteres que va a ser convertida a fecha solo contiene un subconjunto de elementos es convertida, Oracle provee valores por default para completar la fecha y poder realizar la conversión. La sintaxis es la siguiente:

TO_DATE(string1, [format],[nls_parameter]),

Solo el parámetro string1 es obligatorio y si el parámetro format no es suministrado, string1 debe tomar la forma de una valor que puede ser implícitamente convertido a fecha. El parámetro opcional format cuando es utilizado es especificado con comillas simples. Los formatos de mascaras son los mismos utilizados en la función TO_CHAR. La función TO_DATE tiene un modificador fx similar al fm de la función TO_CHAR, fx especifica que string1 debe ser igual a format.
Ejemplos:
-- LA FUNCION TO_DATE
SELECT TO_DATE('01-01-2013') FROM DUAL;

-- CONVIETE LA CADENA EN LA MASCARA CORRESPONDIENTE
SELECT TO_DATE('01-ENE-2013','DD-MON-YYYY') FROM DUAL;

-- NO SE SUMINISTRA EL AÑO, ORACLE COLOCA EL AÑO ACTUAL
SELECT TO_DATE('01-ENE','DD-MON') FROM DUAL;

-- NO SE SUMINISTRA EL AÑO, ORACLE COLOCA EL MES, AÑO ACTUAL
SELECT TO_DATE('01','DD') FROM DUAL;

-- ERROR SINO SE ESPCIFICA UNA FECHA QUE PUEDA SER IMPLICITAMENTE CONVERTIDA PROVOCA UN ERROR
SELECT TO_DATE('01-ENE') FROM DUAL;

-- CONVIERTE UNA FECHA COMPLETAA
SELECT TO_DATE('01-ENE-2013 20:59:00','DD-MON-YYYY HH24:MI:SS') FROM DUAL;

-- APLICANDO EL MODIFICADOR FX, LA FECHA DEBE SER IGUAL A LA MASCARA SI NO PROVOCA ERROR
SELECT TO_DATE('01-ENE-13','FXDD-MON-YYYY') FROM DUAL;

SELECT TO_DATE('01-ENE-2013','FXDD-MON-YYYY') FROM DUAL;

Comentarios