Aritmética de FECHA PostgreSQL (+)
Las funciones aritméticas de fecha de PostgreSQL te permiten realizar cálculos con valores de fecha y hora, como sumar o restar intervalos de fechas. Estas funciones son esenciales para operaciones que requieren manipulaciones dinámicas de fechas, como calcular fechas futuras o pasadas.
Utilización
La aritmética de fechas se utiliza cuando necesitas ajustar fechas sumando o restando intervalos, como días, meses o años. La sintaxis consiste en utilizar el operador + o - para sumar o restar intervalos de fechas.
sql
SELECT date_column + interval 'value unit';
SELECT date_column - interval 'value unit';
En esta sintaxis, date_column es la fecha que estás ajustando, y 'value unit' especifica la cantidad y unidad de tiempo a sumar o restar.
Ejemplos
1. Añadir días a una fecha
sql
SELECT '2023-10-15'::date + interval '5 days';
Este ejemplo añade 5 días a la fecha 2023-10-15, dando como resultado 2023-10-20.
2. Restar días a una fecha
sql
SELECT '2023-10-15'::date - interval '5 days';
Este ejemplo resta 5 días a la fecha 2023-10-15, dando como resultado 2023-10-10.
3. Añadir meses a una fecha
sql
SELECT '2023-10-15'::date + interval '2 months';
Aquí, se añaden 2 meses a 2023-10-15, lo que da como resultado 2023-12-15.
4. Añadir intervalos mixtos
sql
SELECT '2023-10-15'::date + interval '1 year 3 months 10 days';
Este ejemplo añade una combinación de 1 año, 3 meses y 10 días a 2023-10-15, lo que da como resultado 2025-01-25. PostgreSQL procesa estos intervalos secuencialmente de izquierda a derecha.
Consejos y buenas prácticas
- Utiliza intervalos explícitos. Define claramente los intervalos utilizando tanto el valor como la unidad (por ejemplo,
'5 days'). - Vigila los años bisiestos. Ten cuidado con los cálculos en los años bisiestos, sobre todo cuando sumes años o meses.
- Combínalo con otras funciones de fecha. Utiliza la aritmética de fechas junto con otras funciones de fecha de PostgreSQL para manipulaciones complejas de fechas.
- Haz pruebas en distintas zonas horarias. Si tu aplicación funciona en varias zonas horarias, comprueba la aritmética de la fecha para garantizar resultados coherentes. PostgreSQL gestiona las marcas de tiempo según las zonas horarias ajustándolas automáticamente a las diferencias horarias.