sql >> Database teknologi >  >> RDS >> MariaDB

8 måder at tilføje mikrosekunder til en Datetime-værdi i MariaDB

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:

  1. Én syntaks giver dig mulighed for at tilføje et antal dage til en dato, hvilket ikke er det, vi gør her.
  2. Den anden syntaks er den samme som med DATE_ADD() funktion ovenfor. Når du bruger denne syntaks, ADDDATE() er et synonym for DATE_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.


  1. Opdater med parameter ved hjælp af rumpersistent bibliotek

  2. Videregivelse af en række ints til T-SQL-lagrede proc via entity framework

  3. VBA's Case Changing-funktion

  4. Hold PostgreSQL fra nogle gange at vælge en dårlig forespørgselsplan