PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Subtrair meses de uma data no PostgreSQL


No PostgreSQL, podemos usar o - operador para subtrair um ou mais meses de uma data.

Exemplos


Podemos especificar intervalos ao subtrair de datas. Por exemplo, podemos usar month ou months para subtrair um ou mais meses de uma data:
SELECT date '2040-03-18' - interval '1 month';

Resultado:
2040-02-18 00:00:00

E no plural:
SELECT date '2040-03-18' - interval '6 months';

Resultado:
2039-09-18 00:00:00

Especificado em dias


Também podemos usar o número equivalente em dias (ou até semanas):
SELECT date '2040-06-20' - interval '31 days';

Resultado:
2040-05-20 00:00:00

Também podemos usar um inteiro ao especificá-lo em dias:
SELECT date '2040-06-20' - 31;

Resultado:
2040-05-20

Ou assim:
SELECT date '2040-06-20' - integer '31';

Resultado:
2040-05-20

Adicionando valores negativos


Também podemos adicionar valores negativos às datas. Nesse caso, podemos usar um valor negativo com o + sinal:

Exemplo:
SELECT date '2040-06-20' + interval '-6 months';

Resultado:
2039-12-20 00:00:00

Podemos fazer a mesma coisa com a opção integer:
SELECT date '2040-06-20' + integer '-31';

Resultado:
2040-05-20