MariaDB
 sql >> Base de Dados >  >> RDS >> MariaDB

Como subtrair um dia de uma data no MariaDB


O MariaDB fornece várias maneiras de realizar aritmética em datas. Isso inclui adicionar ou subtrair um dia (ou muitos dias) de uma determinada data.

Aqui está um exemplo de subtração de um dia de uma data no MariaDB.

O SUBDATE() Função


O SUBDATE() função permite subtrair um certo número de dias de uma data.

A maneira mais fácil de fazer isso é fornecer a data, seguida pelo número de dias que você deseja subtrair.

Exemplo:
SELECT SUBDATE('2021-05-21', 1); 

Resultado:
+--------------------------+| SUBDATE('2021-05-21', 1) |+--------------------------+| 20/05/2021 |+--------------------------+

Vários dias


Se você precisar subtrair mais de um dia, basta usar esse número em vez de 1 .
SELECT SUBDATE('2021-05-01', 30); 

Resultado:
+---------------------------+| SUBDATE('2021-05-01', 30) |+----------------------------+| 01/04/2021 |+------------------------------------------+

Neste caso devolvemos a data, menos 30 dias. Isso também trouxe a data de volta para o mês anterior.

Uma sintaxe mais detalhada


O SUBDATE() A função também tem uma sintaxe mais detalhada, onde você pode especificar a unidade a ser subtraída da data. Por exemplo, você pode especificar dias, semanas, meses, anos, etc.
SELECT SUBDATE('2021-05-01', INTERVAL 1 DAY); 

Resultado:
+---------------------------------------+| SUBDATE('2021-05-01', INTERVAL 1 DAY) |+------------------------------------------------ -----+| 30/04/2021 |+--------------------------------------------------+

Observe que ao subtrair vários dias, o DAY palavra-chave permanece não plural:
SELECT SUBDATE('2021-05-01', INTERVAL 10 DAY); 

Resultado:
+----------------------------------------+| SUBDATE('2021-05-01', INTERVAL 10 DAY) |+------------------------------------------------ ------+| 21/04/2021 |+---------------------------------------------------+ 

O Operador de Subtração (- )


Outra maneira de subtrair dias de uma data é usar o operador de subtração (- ), também conhecido como operador de menos.

Exemplo:
SELECT '2021-05-01' - INTERVAL 90 DAY; 

Resultado:
+--------------------------------+| '2021-05-01' - INTERVALO 90 DIAS |+--------------------------------+| 31/01/2021 |+--------------------------------+

O operador de adição (+ )


Você também pode usar o operador de adição (+ ) juntamente com um valor negativo.

Exemplo:
SELECT '2021-05-01' + INTERVAL -90 DAY; 

Resultado:
+---------------------------------+| '2021-05-01' + INTERVALO -90 DIAS |+---------------------------------+| 31/01/2021 |+---------------------------------+

Outras maneiras de subtrair dias de datas


Aqui estão algumas outras abordagens que você pode usar para subtrair um ou mais dias de uma data:
  • O DATE_SUB() função (o SUBDATE() função usada no exemplo acima é sinônimo de DATE_SUB() quando usado com a mesma sintaxe).
  • O DATE_ADD() função (fornecer um valor negativo subtrairá esse valor da data).
  • O ADDDATE() função (fornecer um valor negativo subtrairá esse valor da data).