Hvis du har brug for at tilføje et eller flere mikrosekunder til en datetime-værdi i MariaDB, er her 8 muligheder at overveje.
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 timer, minutter, sekunder, mikrosekunder osv.
Eksempel:
VÆLG DATE_ADD('2021-05-01 10:00:00', INTERVAL 35 MICROSECOND);
Resultat:
+------------------------------------------------ ---------------+| DATE_ADD('2021-05-01 10:00:00', INTERVAL 35 MICROSECOND) |+----------------------------- ----------------------------+| 2021-05-01 10:00:00.000035 |+------------------------------------------------ --------------------+
I dette tilfælde tilføjede jeg 35 mikrosekunder til datetime-udtrykket. Bemærk, at SECOND
søgeord forbliver ikke-flertal, uanset om jeg tilføjer et sekund eller mere.
Du vil måske også bemærke, at mikrosekundersdelen ikke var i min oprindelige dato/tidsværdi, men den blev tilføjet, når jeg tilføjede mikrosekunderne.
På samme måde, her er hvad der sker, hvis jeg kun angiver datoen:
SELECT DATE_ADD('2021-05-01', INTERVAL 35 MICROSECOND);
Resultat:
+---------------------------------------------- ---+| DATE_ADD('2021-05-01', INTERVAL 35 MICROSECOND) |+---------------------------------------- ---------------+| 01-05-2021 00:00:00.000035 |+------------------------------------------------ -----------+
Tidsdelen føjes til resultatet, og det antages, at den indledende tid var 00:00:00.000000
.
Du kan også bruge en sammensat dato/tidsenhed til at tilføje flere enheder. Hvis du f.eks. vil tilføje 1 minut og 30 sekunder, kan du gøre dette:
VÆLG DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' SECOND_MICROSECOND);
Resultat:
+---------------------------------------------- ----------------------------+| DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' SECOND_MICROSECOND) |+-------------------------------- --------------------------------------------+| 01-05-2021 10:00:01.300000 |+------------------------------------------------ ------------------------------------+
Se MariaDB dato- og tidsenheder for en komplet liste over dato-/tidsenheder.
ADDDATE()
Funktion
En anden måde at tilføje sekunder 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.
- 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 MICROSECOND);
Resultat:
+---------------------------------------------- -----------+| ADDDATE('2021-05-01 10:00:00', INTERVAL 35 MICROSECOND) |+----------------------------------- ----------------------------+| 2021-05-01 10:00:00.000035 |+------------------------------------------------ -------------------+
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:
VÆLG DATE_SUB('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND);
Resultat:
+---------------------------------------------- --------------+| DATE_SUB('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND) |+-------------------------------- --------------------------------------+| 2021-05-01 10:00:00.000035 |+------------------------------------------------ ----------------------+
SUBDATE()
Funktion
SUBDATE()
funktion er et synonym for DATE_SUB()
når du bruger følgende syntaks.
Eksempel:
VÆLG SUBDATE('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND);
Resultat:
+---------------------------------------------- ------------+| SUBDATE('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND) |+-------------------------------- ------------------------------------+| 2021-05-01 10:00:00.000035 |+------------------------------------------------ --------------------+
+
Operatør
En anden mulighed er at bruge +
operatør.
+
operator bruges til at udføre tilføjelse, og vi kan bruge den på datoer sammen med den relevante dato/tidsenhed for at tilføje et bestemt antal mikrosekunder til vores dato- og tidsudtryk.
Eksempel:
VÆLG '2021-05-01 10:00:00' + INTERVAL 35 MICROSECOND;
Resultat:
+---------------------------------------------- ---+| '2021-05-01 10:00:00' + INTERVAL 35 MICROSECOND |+-------------------------------- ------------------+| 2021-05-01 10:00:00.000035 |+------------------------------------------------ -----------+
- 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 tilføjes til dato- og tidsudtrykket:
VÆLG '2021-05-01 10:00:00' - INTERVAL -35 MICROSECOND;
Resultat:
+---------------------------------------------- ----+| '2021-05-01 10:00:00' - INTERVAL -35 MICROSECOND |+-------------------------------------- -------------------+| 2021-05-01 10:00:00.000035 |+------------------------------------------------ ------------+
ADDTIME()
Funktion
Du kan bruge ADDTIME()
funktion til at tilføje et antal millisekunder til et datetime-udtryk.
Eksempel:
SELECT ADDTIME('2021-05-01 10:00:00', '00:00:00.123456');
Resultat:
+---------------------------------------------- -----+| ADDTIME('2021-05-01 10:00:00', '00:00:00.123456') |+-------------------------------- --------------------------+| 01-05-2021 10:00:00.123456 |+------------------------------------------------ -------------+
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:00:00.123456');
Resultat:
+---------------------------------------------- ------+| SUBTIME('2021-05-01 10:00:00', '-00:00:00.123456') |+------------------------ ----------------------------+| 01-05-2021 10:00:00.123456 |+------------------------------------------------ --------------+
Andre dato- og tidsenheder
Ovenstående eksempler tilføjer et antal mikrosekunder 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.