MariaDB предоставя няколко начина за извършване на аритметика на дати. Това включва добавяне или изваждане на месец (или много месеци) от дадена дата.
Ето пример за изваждане на месец от дата в MariaDB.
DATE_SUB()
Функция
DATE_SUB()
функцията ви позволява да извадите определен брой единици от дадена дата. Следователно можете да върнете датата, минус няколко дни, седмици, месеци, години и т.н.
В нашия случай искаме да извадим месец.
Пример:
SELECT DATE_SUB('2021-05-01', INTERVAL 1 MONTH);
Резултат:
+------------------------------------------+ | DATE_SUB('2021-05-01', INTERVAL 1 MONTH) | +------------------------------------------+ | 2021-04-01 | +------------------------------------------+
Няколко месеца
Ако трябва да извадите повече от един месец, просто използвайте това число вместо 1
. Въпреки това, MONTH
ключовата дума остава не в множествено число, независимо:
SELECT DATE_SUB('2021-05-01', INTERVAL 2 MONTH);
Резултат:
+------------------------------------------+ | DATE_SUB('2021-05-01', INTERVAL 2 MONTH) | +------------------------------------------+ | 2021-03-01 | +------------------------------------------+
Операторът за изваждане (-
)
Друг начин да извадите месец от дата е да използвате оператора за изваждане (-
), известен също като оператор минус.
Пример:
SELECT '2021-05-01' - INTERVAL 1 MONTH;
Резултат:
+---------------------------------+ | '2021-05-01' - INTERVAL 1 MONTH | +---------------------------------+ | 2021-04-01 | +---------------------------------+
Операторът за събиране (+
)
И ако предпочитате да бъдете заплетени, можете да използвате оператора за събиране (+
) заедно с отрицателна сума.
Пример:
SELECT '2021-05-01' + INTERVAL -1 MONTH;
Резултат:
+----------------------------------+ | '2021-05-01' + INTERVAL -1 MONTH | +----------------------------------+ | 2021-04-01 | +----------------------------------+
Други начини за изваждане на месеци от дати
Ето някои други подходи, които можете да използвате, за да извадите един или повече месеца от дадена дата:
SUBDATE()
функция (това е синоним наDATE_SUB()
когато се използва със същия синтаксис).DATE_ADD()
функция (предоставянето на отрицателна сума ще извади тази сума от датата).ADDDATE()
функция (предоставянето на отрицателна сума ще извади тази сума от датата).