Her er nogle muligheder for at trække et eller flere mikrosekunder fra et datetime-udtryk i MariaDB.
SUBTIME()
Funktion
SUBTIME()
trækker en given mængde tid fra en værdi for tid eller dato.
Eksempel:
SELECT SUBTIME('2021-05-01 10:00:00', '00:00:00.123456');
Resultat:
+---------------------------------------------------+ | SUBTIME('2021-05-01 10:00:00', '00:00:00.123456') | +---------------------------------------------------+ | 2021-05-01 09:59:59.876544 | +---------------------------------------------------+
Du kan også ændre de andre tidsenheder, såsom timer, minutter, sekunder osv.
DATE_SUB()
Funktion
DATE_SUB()
funktionen giver dig mulighed for at trække et bestemt antal dato/tidsenheder fra et dato- eller datetime-udtryk. Derfor kan vi bruge denne funktion til at returnere datetime-værdien minus et vist antal mikrosekunder.
Eksempel:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL 300 MICROSECOND);
Resultat:
+-----------------------------------------------------------+ | DATE_SUB('2021-05-01 10:00:00', INTERVAL 300 MICROSECOND) | +-----------------------------------------------------------+ | 2021-05-01 09:59:59.999700 | +-----------------------------------------------------------+
Bemærk, at MICROSECOND
søgeord forbliver ikke-flertal, uanset om du trækker et mikrosekund eller mere.
Passer Just the Date
Her er, hvad der sker, hvis vi kun angiver en datoværdi:
SELECT DATE_SUB('2021-05-01', INTERVAL 3 MICROSECOND);
Resultat:
+------------------------------------------------+ | DATE_SUB('2021-05-01', INTERVAL 3 MICROSECOND) | +------------------------------------------------+ | 2021-04-30 23:59:59.999997 | +------------------------------------------------+
Det antager, at tiden starter kl. 00:00:00, og derfor MICROSECOND
beløb trækkes fra det.
Subtraktionsoperatøren (-
)
En anden måde at trække et eller flere mikrosekunder fra en datetime-værdi på er at bruge subtraktionsoperatoren (-
), også kendt som minusoperatoren.
Eksempel:
SELECT '2021-05-01 10:00:00' - INTERVAL 30 MICROSECOND;
Resultat:
+-------------------------------------------------+ | '2021-05-01 10:00:00' - INTERVAL 30 MICROSECOND | +-------------------------------------------------+ | 2021-05-01 09:59:59.999970 | +-------------------------------------------------+
Additionsoperatøren (+
)
Du kan alternativt bruge additionsoperatoren (+
) sammen med et negativt beløb.
Eksempel:
SELECT '2021-05-01 10:00:00' + INTERVAL -30 MICROSECOND;
Resultat:
+--------------------------------------------------+ | '2021-05-01 10:00:00' + INTERVAL -30 MICROSECOND | +--------------------------------------------------+ | 2021-05-01 09:59:59.999970 | +--------------------------------------------------+
Andre måder at trække mikrosekunder på
Her er nogle andre metoder, du kan bruge til at trække et eller flere mikrosekunder fra en datetime-værdi:
SUBTIME()
funktion.ADDTIME()
funktion (hvis du angiver et negativt beløb, trækkes dette beløb fra dato-tidsværdien).SUBDATE()
funktion (dette er et synonym forDATE_SUB()
når det bruges med samme syntaks).DATE_ADD()
funktion (hvis du angiver et negativt beløb, trækkes dette beløb fra dato-tidsværdien).ADDDATE()
funktion (hvis du angiver et negativt beløb, trækkes dette beløb fra dato-tidsværdien).