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

Restar años de una fecha en PostgreSQL

En PostgreSQL, podemos usar - operador para restar uno o más años de una fecha.

Ejemplos

Podemos especificar intervalos al restar de fechas. Por ejemplo, podemos usar year o years para restar uno o más años de una fecha:

SELECT date '2030-01-20' - interval '1 year';

Resultado:

2029-01-20 00:00:00

Y en forma plural:

SELECT date '2030-01-20' - interval '5 years';

Resultado:

2025-01-20 00:00:00

Especificado en meses

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

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

Resultado:

2029-01-20 00:00:00

También podemos usar un número entero al especificarlo en días:

SELECT date '2030-01-20' - 365;

Resultado:

2029-01-20

O así:

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

Resultado:

2029-01-20

Adición de valores negativos

Alternativamente, podemos agregar un valor negativo a la fecha. En este caso, podemos usar un valor negativo con el + firmar:

Ejemplo:

SELECT date '2030-01-20' + interval '-7 years';

Resultado:

2023-01-20 00:00:00

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

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

Resultado:

2029-01-20