MariaDB giver mange måder at udføre datoregning på. Dette omfatter tilføjelse eller subtrahering af et bestemt antal af en given datodel fra en dato- eller datotidsværdi.
I denne artikel præsenterer jeg 8 måder at tilføje et eller flere minutter til en datetime-værdi i MariaDB.
DATE_ADD()
Funktion
DATE_ADD()
funktionen giver dig mulighed for at tilføje et beløb til et dato- eller datotidsudtryk. Dette inkluderer tilføjelse af tidsdele, såsom minutter.
Eksempel:
SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 35 MINUTE);
Resultat:
+-----------------------------------------------------+ | DATE_ADD('2021-05-01 10:00:00', INTERVAL 35 MINUTE) | +-----------------------------------------------------+ | 2021-05-01 10:35:00 | +-----------------------------------------------------+
I dette tilfælde tilføjede jeg 35 minutter til datetime-udtrykket. Bemærk, at MINUTE
søgeord forbliver ikke-flertal, uanset om jeg tilføjer et minut eller mere.
Her er, hvad der sker, hvis jeg kun angiver datoen:
SELECT DATE_ADD('2021-05-01', INTERVAL 35 MINUTE);
Resultat:
+--------------------------------------------+ | DATE_ADD('2021-05-01', INTERVAL 35 MINUTE) | +--------------------------------------------+ | 2021-05-01 00:35:00 | +--------------------------------------------+
Tidsdelen føjes til resultatet, og det antages, at den indledende tid var 00:00:00
.
Når vi tilføjer 60 minutter, kan vi bruge HOUR
søgeord, hvis vi foretrækker det:
SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 HOUR);
Resultat:
+--------------------------------------------------+ | DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 HOUR) | +--------------------------------------------------+ | 2021-05-01 11:00:00 | +--------------------------------------------------+
Det er klart, at denne teknik virker med 120 minutter, 180 og så videre. Brug blot det relevante antal timer.
Du kan også bruge en sammensat dato/tidsenhed til at tilføje flere enheder. Hvis du f.eks. vil tilføje 1 time og 30 minutter, kan du gøre dette:
SELECT
DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' HOUR_MINUTE);
Resultat:
+--------------------------------------------------------------+ | DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' HOUR_MINUTE) | +--------------------------------------------------------------+ | 2021-05-01 11:30:00 | +--------------------------------------------------------------+
Se MariaDB dato- og tidsenheder for en komplet liste over dato-/tidsenheder.
ADDDATE()
Funktion
En anden måde at tilføje minutter til et datetime-udtryk er at bruge ADDDATE()
fungere. Denne funktion har to syntakser:
- Én syntaks giver dig mulighed for at tilføje et antal dage til en dato, hvilket ikke er det, vi gør her (medmindre vi planlægger at tilføje minutter i blokke af 1.440, hvilket er hvor mange minutter der er på en dag).
- Den anden syntaks er den samme som med
DATE_ADD()
funktion ovenfor. Når du bruger denne syntaks,ADDDATE()
er et synonym forDATE_ADD()
.
Eksempel:
SELECT ADDDATE('2021-05-01 10:00:00', INTERVAL 35 MINUTE);
Resultat:
+----------------------------------------------------+ | ADDDATE('2021-05-01 10:00:00', INTERVAL 35 MINUTE) | +----------------------------------------------------+ | 2021-05-01 10:35:00 | +----------------------------------------------------+
DATE_SUB()
Funktion
DATE_SUB()
funktionen giver dig mulighed for at fratrække et beløb til et dato/dato/tidspunkt udtryk. Men hvis du angiver en negativ værdi at trække fra, så ender den med at blive tillagt til dato/klokkeslæt.
Eksempel:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL -35 MINUTE);
Resultat:
+------------------------------------------------------+ | DATE_SUB('2021-05-01 10:00:00', INTERVAL -35 MINUTE) | +------------------------------------------------------+ | 2021-05-01 10:35:00 | +------------------------------------------------------+
SUBDATE()
Funktion
SUBDATE()
funktion er et synonym for DATE_SUB()
når du bruger følgende syntaks.
Eksempel:
SELECT SUBDATE('2021-05-01 10:00:00', INTERVAL -35 MINUTE);
Resultat:
+-----------------------------------------------------+ | SUBDATE('2021-05-01 10:00:00', INTERVAL -35 MINUTE) | +-----------------------------------------------------+ | 2021-05-01 10:35:00 | +-----------------------------------------------------+
+
Operatør
En anden mulighed er at bruge +
operatør.
+
operatør bruges til at udføre tilføjelse, og vi kan bruge det på datoer sammen med den gældende dato/tidsenhed for at tilføje et bestemt antal minutter til vores dato.
Eksempel:
SELECT '2021-05-01 10:00:00' + INTERVAL 35 MINUTE;
Resultat:
+--------------------------------------------+ | '2021-05-01 10:00:00' + INTERVAL 35 MINUTE | +--------------------------------------------+ | 2021-05-01 10:35:00 | +--------------------------------------------+
- Operatør
-
operator kan bruges til at trække et beløb fra en dato. Men hvis det bruges til at trække et negativt tal fra, så er resultatet et positivt beløb, der lægges til datoen:
SELECT '2021-05-01 10:00:00' - INTERVAL -35 MINUTE;
Resultat:
+---------------------------------------------+ | '2021-05-01 10:00:00' - INTERVAL -35 MINUTE | +---------------------------------------------+ | 2021-05-01 10:35:00 | +---------------------------------------------+
ADDTIME()
Funktion
Du kan bruge ADDTIME()
funktion til at tilføje et antal minutter til et dato- og tidsudtryk.
Eksempel:
SELECT ADDTIME('2021-05-01 10:00:00', '00:30:00');
Resultat:
+--------------------------------------------+ | ADDTIME('2021-05-01 10:00:00', '00:30:00') | +--------------------------------------------+ | 2021-05-01 10:30:00 | +--------------------------------------------+
En fordel ved denne funktion er, at du også kan ændre de andre tidsenheder, såsom timer, sekunder osv.
SUBTIME()
Funktion
Du kan alternativt skifte rundt og bruge SUBTIME()
med en negativ værdi, hvis du ønsker det:
SELECT SUBTIME('2021-05-01 10:00:00', '-00:30:00');
Resultat:
+---------------------------------------------+ | SUBTIME('2021-05-01 10:00:00', '-00:30:00') | +---------------------------------------------+ | 2021-05-01 10:30:00 | +---------------------------------------------+
Andre dato- og tidsenheder
Ovenstående eksempler tilføjer et antal minutter til datetime-værdien, men vi kan bruge de samme teknikker til at tilføje enhver dato/tidsenhed. Se MariaDB dato- og tidsenheder for en komplet liste over dato/tidsenheder, der kan bruges med ovenstående funktioner og operatorer.