Podemos subtrair um ou mais dias de uma data no PostgreSQL com o
-
operador. Exemplos
A maneira mais simples de subtrair um ou mais dias de uma data é usar um número inteiro, assim:
SELECT date '2022-10-12' - 7;
Resultado:
2022-10-05
Ou assim:
SELECT date '2022-10-12' - integer '7';
Resultado:
2022-10-05
Usando intervalos
Também podemos especificar intervalos ao subtrair de datas. Para subtrair dias, podemos usar
day
ou days
:SELECT date '2022-10-12' - interval '1 day';
Resultado:
2022-10-11 00:00:00
E no plural:
SELECT date '2022-10-12' - interval '7 days';
Resultado:
2022-10-05 00:00:00
Especificado em horas
Outra maneira de fazer isso é especificar o número em seu equivalente horário:
SELECT date '2022-10-12' - interval '24 hours';
Resultado:
2022-10-11 00:00:00
Adicionando valores negativos
Também podemos adicionar valores negativos às datas. Para subtrair um valor negativo, podemos usar o valor negativo com o
+
sinal:Exemplo:
SELECT date '2022-10-12' + interval '-7 days';
Resultado:
2022-10-05 00:00:00
Podemos fazer a mesma coisa com a opção integer:
SELECT date '2022-10-12' + integer '-7';
Resultado:
2022-10-05