PostgreSQL FECHA_CURRENTE
Las Funciones de Fecha de PostgreSQL te permiten manipular y recuperar valores de fecha de forma eficaz. La función `CURRENT_DATE`, en concreto, devuelve la fecha actual según la zona horaria y el reloj del sistema.
Utilización
La función `CURRENT_DATE` se utiliza para obtener la fecha actual en una base de datos PostgreSQL. Suele emplearse en consultas que necesitan filtrar, comparar o actualizar registros basándose en la fecha de hoy.
SELECT CURRENT_DATE;
En esta sintaxis, `CURRENT_DATE` obtiene la fecha actual del servidor de la base de datos. Ten en cuenta que `CURRENT_DATE` es equivalente a `CURRENT_DATE::date` y no incluye el componente temporal, que es importante al comparar fechas con marcas de tiempo.
Ejemplos
1. Recuperar fecha actual
SELECT CURRENT_DATE;
Esta sencilla consulta devuelve la fecha actual del reloj del sistema de la base de datos, normalmente en el formato `AAAA-MM-DD`.
2. Filtrar datos con FECHA_ACTUAL
SELECT order_id, order_date
FROM orders
WHERE order_date = CURRENT_DATE;
Esta consulta recupera los pedidos realizados en la fecha actual, filtrando eficazmente los resultados para mostrar sólo los pedidos de hoy.
3. Calcular la edad
SELECT name, birth_date, CURRENT_DATE - birth_date AS age
FROM employees;
En este ejemplo, la consulta calcula la edad de los empleados restando su fecha de nacimiento de la fecha actual.
Consejos y buenas prácticas
- Utiliza CURRENT_DATE para la normalización. Garantiza la coherencia en las consultas que necesitan hacer referencia a la fecha actual.
- Combínalo con las zonas horarias. Ten en cuenta las zonas horarias para evitar discrepancias, especialmente en sistemas distribuidos. Los resultados de `CURRENT_DATE` dependen de la configuración de la zona horaria del servidor de la base de datos.
- Utilizar en comparaciones de fechas. Utiliza `CURRENT_DATE` para filtrar los registros dinámicamente en función de la fecha actual para analizar los datos en tiempo real.
- Aprovecha para automatizar. Implementa `CURRENT_DATE` en informes automatizados o actualizaciones de datos para asegurarte de que siempre reflejan los datos más recientes.
- Comportamiento de la transacción. `CURRENT_DATE` se evalúa al inicio de una transacción y permanece constante durante su duración. Esto puede ser especialmente útil para los usuarios que trabajan con transacciones de larga duración.