MariaDB udostępnia kilka sposobów wykonywania arytmetyki na datach. Obejmuje to dodawanie lub odejmowanie miesiąca (lub wielu miesięcy) od podanej daty.
Oto przykład odejmowania miesiąca od daty w MariaDB.
DATE_SUB() Funkcja
DATE_SUB() funkcja pozwala odjąć określoną liczbę jednostek od daty. Dlatego możesz zwrócić datę, pomniejszoną o liczbę dni, tygodni, miesięcy, lat itp.
W naszym przypadku chcemy odjąć miesiąc.
Przykład:
SELECT DATE_SUB('2021-05-01', INTERVAL 1 MONTH); Wynik:
+------------------------------------------+
| DATE_SUB('2021-05-01', INTERVAL 1 MONTH) |
+------------------------------------------+
| 2021-04-01 |
+------------------------------------------+ Wiele miesięcy
Jeśli potrzebujesz odjąć więcej niż jeden miesiąc, użyj tej liczby zamiast 1 . Jednak MONTH słowo kluczowe pozostaje w liczbie różnej niezależnie od:
SELECT DATE_SUB('2021-05-01', INTERVAL 2 MONTH); Wynik:
+------------------------------------------+
| DATE_SUB('2021-05-01', INTERVAL 2 MONTH) |
+------------------------------------------+
| 2021-03-01 |
+------------------------------------------+ Operator odejmowania (- )
Innym sposobem odejmowania miesiąca od daty jest użycie operatora odejmowania (- ), znany również jako operator minus.
Przykład:
SELECT '2021-05-01' - INTERVAL 1 MONTH; Wynik:
+---------------------------------+ | '2021-05-01' - INTERVAL 1 MONTH | +---------------------------------+ | 2021-04-01 | +---------------------------------+
Operator dodawania (+ )
A jeśli wolisz być zawiły, możesz użyć operatora dodawania (+ ) wraz z kwotą ujemną.
Przykład:
SELECT '2021-05-01' + INTERVAL -1 MONTH; Wynik:
+----------------------------------+ | '2021-05-01' + INTERVAL -1 MONTH | +----------------------------------+ | 2021-04-01 | +----------------------------------+
Inne sposoby odejmowania miesięcy od dat
Oto kilka innych metod, których możesz użyć, aby odjąć jeden lub więcej miesięcy od daty:
SUBDATE()funkcja (jest to synonimDATE_SUB()gdy jest używany z tą samą składnią).DATE_ADD()funkcja (podanie kwoty ujemnej spowoduje odjęcie tej kwoty od daty).ADDDATE()funkcja (podanie kwoty ujemnej spowoduje odjęcie tej kwoty od daty).