sql >> Base de Datos >  >> RDS >> PostgreSQL

Agregar meses a una fecha en PostgreSQL

En PostgreSQL, podemos usar + operador para agregar uno o más meses a una fecha. Hay varias opciones cuando se trata de especificar el número real de meses.

Ejemplos

Postgres nos permite especificar intervalos al agregar fechas. Por lo tanto, podemos especificar month o months :

SELECT date '2030-01-20' + interval '1 month';

Resultado:

2030-02-20 00:00:00

Y en forma plural:

SELECT date '2030-01-20' + interval '6 months';

Resultado:

2030-07-20 00:00:00

Especificado en Días

También podemos usar el número equivalente en días (o semanas para el caso):

SELECT date '2030-01-20' + interval '31 days';

Resultado:

2030-02-20 00:00:00

Obviamente, si esto coincide o no con la cantidad exacta de meses dependerá de la cantidad real de días o semanas especificada.

Alternativamente, podemos usar un número entero al especificarlo en días:

SELECT date '2030-01-20' + 31;

Resultado:

2030-02-20

También podemos hacerlo así:

SELECT date '2030-01-20' + integer '31';

Resultado:

2030-02-20

Valores negativos

También podemos realizar aritmética de fechas con valores negativos. Si usamos un valor negativo con el + signo, entonces el número especificado de meses se restará de la fecha. Pero si lo usamos con el - firmar, luego se agregará a la fecha.

Ejemplo:

SELECT date '2030-01-20' - interval '-6 months';

Resultado:

2030-07-20 00:00:00

Podemos hacer lo mismo con la opción de número entero:

SELECT date '2030-01-20' - integer '-181';

Resultado:

2030-07-20