Как да добавяте и изваждате дати и часове в MySQL

Справка

Официален уебсайт на MySQL Документация за продукта Функции за дата и час

DATE_ADD и DATE_SUB

Тези две функции са двойка, едната е добавяне, а другата е изваждане. Тяхната функция е да добавят или изваждат период от време от посочената дата. За конкретна употреба вижте следния пример. В първия пример добавяме един месец към текущото време, а вторият изважда един месец от текущото време.

            SELECT DATE_ADD(now(), INTERVAL 1 MONTH);
SELECT DATE_SUB(now(), INTERVAL 1 MONTH);
        

ADDDATE и SUBDATE

Тези две функции също са двойка, едната е добавяне, а другата е изваждане. Използването им е същото като DATE_ADD и DATE_SUB. За конкретна употреба вижте следния пример. В първия пример добавяме един месец към текущото време, а вторият изважда един месец от текущото време.

            SELECT ADDDATE(now(), INTERVAL 1 MONTH);
SELECT SUBDATE(now(), INTERVAL 1 MONTH);
        

Повече употреба

Използваме само месец като параметър в примера, но час, минута, секунда, седмица, ден, година също могат да се използват като параметри и също така могат да поддържат минути и секунди, часове и минути и секунди и повече комбинация. За подробности вижте списъка по-долу.

            MICROSECOND
SECOND
MINUTE
HOUR
DAY
WEEK
MONTH
QUARTER
YEAR
SECOND_MICROSECOND 'SECONDS.MICROSECONDS'
MINUTE_MICROSECOND 'MINUTES:SECONDS.MICROSECONDS'
MINUTE_SECOND 'MINUTES:SECONDS'
HOUR_MICROSECOND 'HOURS:MINUTES:SECONDS.MICROSECONDS'
HOUR_SECOND 'HOURS:MINUTES:SECONDS'
HOUR_MINUTE 'HOURS:MINUTES'
DAY_MICROSECOND 'DAYS HOURS:MINUTES:SECONDS.MICROSECONDS'
DAY_SECOND 'DAYS HOURS:MINUTES:SECONDS'
DAY_MINUTE 'DAYS HOURS:MINUTES'
DAY_HOUR 'DAYS HOURS'
YEAR_MONTH 'YEARS-MONTHS'
        

друга информация

Всъщност при изваждането може да се използва и DATE_ADD, трябва само да запишем параметъра като отрицателно число. В допълнение, MariaDB е клон на MySQL и техният SQL синтаксис е по същество един и същ, така че има горепосочените четири функции на MariaDB и използването е абсолютно същото.