La función SYSDATE en Oracle es una de las herramientas más utilizadas para obtener la fecha y la hora actuales directamente desde el sistema operativo del servidor donde se ejecuta la base de datos. Esto la hace esencial para tareas como el registro de eventos, auditorías o cualquier operación que necesite una marca temporal precisa.
La función SYSDATE devuelve un valor de tipo DATE
, que incluye tanto la fecha como la hora. El formato en que se presenta depende del parámetro NLS_DATE_FORMAT
, lo que significa que su visualización puede variar según la configuración regional establecida en la sesión. Sin embargo, el valor interno almacenado siempre incluye la información completa de fecha y hora.
En el artículo, primero mostraré la sintaxis básica de esta función y cómo implementarla en consultas SQL. Posteriormente, incluiré ejemplos prácticos que ilustran su uso en diferentes escenarios, como la creación de registros de transacciones, cálculos de tiempo transcurrido y comparaciones entre fechas.
Si deseas profundizar más en las características de esta función, puedes consultar la documentación oficial de ORACLE sobre SYSDATE.
Sintaxis
Escribe la siguiente sintaxis para utilizar la función SYSDATE en Oracle:
SYSDATE
Ejemplo
En el siguiente ejemplo puedes comprobar como mostramos la fecha actual y cómo no tenemos configurado el parámetro NLS_DATE_FORMAT para mostrar la hora lo podemos conseguir aplicando una mascara con la función to_char.
SELECT SYSDATE , TO_CHAR(SYSDATE, 'MM-DD-YYYY HH24:MI:SS') SYSDATE_2 FROM dual;

La función SYSDATE no se puede utilizar como una condición de la restricción CHECK.