Kā saskaitīt un atņemt datumus un laikus MySQL

Atsauce

MySQL oficiālā vietne Produkta dokumentācija Datuma un laika funkcijas

DATE_ADD un DATE_SUB

Šīs divas funkcijas ir pāris, viena ir saskaitīšana un otra ir atņemšana. Viņu funkcija ir saskaitīt vai atņemt laika periodu no norādītā datuma. Konkrētu lietojumu skatiet šajā piemērā. Pirmajā piemērā mēs pievienojam pašreizējam laikam vienu mēnesi, bet otrais atņem vienu mēnesi no pašreizējā laika.

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

PIEVIENOT un SUBDATĒT

Šīs divas funkcijas ir arī pāris, viena ir saskaitīšana un otra ir atņemšana. To lietošana ir tāda pati kā DATE_ADD un DATE_SUB. Konkrētu lietojumu skatiet šajā piemērā. Pirmajā piemērā mēs pievienojam pašreizējam laikam vienu mēnesi, bet otrais atņem vienu mēnesi no pašreizējā laika.

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

Vairāk izmantošanas

Piemērā parametrs tiek izmantots tikai mēnesis, tomēr kā parametrus var izmantot arī stundu, minūti, sekundi, nedēļu, dienu, gadu, kā arī var atbalstīt minūtes un sekundes, stundas un minūtes un sekundes un vairāk kombinācija. Sīkāku informāciju skatiet zemāk esošajā sarakstā.

            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'
        

cita informācija

Faktiski, atņemot, var izmantot arī DATE_ADD, mums parametrs jāuzraksta tikai kā negatīvs skaitlis. Turklāt MariaDB ir MySQL filiāle, un to SQL sintakse būtībā ir vienāda, tāpēc MariaDB ir iepriekš minētās četras funkcijas, un lietojums ir tieši tāds pats.