Hier zijn enkele opties voor het aftrekken van een of meer microseconden van een datetime-expressie in MariaDB.
De SUBTIME()
Functie
De SUBTIME()
trekt een bepaalde hoeveelheid tijd af van een tijd- of datetime-waarde.
Voorbeeld:
SELECT SUBTIME('2021-05-01 10:00:00', '00:00:00.123456');
Resultaat:
+---------------------------------------------------+ | SUBTIME('2021-05-01 10:00:00', '00:00:00.123456') | +---------------------------------------------------+ | 2021-05-01 09:59:59.876544 | +---------------------------------------------------+
U kunt ook de andere tijdseenheden wijzigen, zoals uren, minuten, seconden, enz.
De DATE_SUB()
Functie
De DATE_SUB()
Met deze functie kunt u een bepaald aantal datum/tijd-eenheden aftrekken van een datum- of datetime-uitdrukking. Daarom kunnen we deze functie gebruiken om de datetime-waarde te retourneren, minus een bepaald aantal microseconden.
Voorbeeld:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL 300 MICROSECOND);
Resultaat:
+-----------------------------------------------------------+ | DATE_SUB('2021-05-01 10:00:00', INTERVAL 300 MICROSECOND) | +-----------------------------------------------------------+ | 2021-05-01 09:59:59.999700 | +-----------------------------------------------------------+
Merk op dat de MICROSECOND
zoekwoord blijft niet-meervoud, ongeacht of u één microseconde of meer aftrekt.
Alleen de datum doorgeven
Dit is wat er gebeurt als we alleen een datumwaarde geven:
SELECT DATE_SUB('2021-05-01', INTERVAL 3 MICROSECOND);
Resultaat:
+------------------------------------------------+ | DATE_SUB('2021-05-01', INTERVAL 3 MICROSECOND) | +------------------------------------------------+ | 2021-04-30 23:59:59.999997 | +------------------------------------------------+
Het gaat ervan uit dat de tijd begint om 00:00:00, en dus de MICROSECOND
het bedrag wordt daarvan afgetrokken.
De aftrekkingsoperator (-
)
Een andere manier om een of meer microseconden van een datetime-waarde af te trekken, is door de aftrekkingsoperator te gebruiken (-
), ook wel de min-operator genoemd.
Voorbeeld:
SELECT '2021-05-01 10:00:00' - INTERVAL 30 MICROSECOND;
Resultaat:
+-------------------------------------------------+ | '2021-05-01 10:00:00' - INTERVAL 30 MICROSECOND | +-------------------------------------------------+ | 2021-05-01 09:59:59.999970 | +-------------------------------------------------+
De toevoegingsoperator (+
)
U kunt ook de opteloperator gebruiken (+
) samen met een negatief bedrag.
Voorbeeld:
SELECT '2021-05-01 10:00:00' + INTERVAL -30 MICROSECOND;
Resultaat:
+--------------------------------------------------+ | '2021-05-01 10:00:00' + INTERVAL -30 MICROSECOND | +--------------------------------------------------+ | 2021-05-01 09:59:59.999970 | +--------------------------------------------------+
Andere manieren om microseconden af te trekken
Hier zijn enkele andere benaderingen die u zou kunnen gebruiken om een of meer microseconden af te trekken van een datetime-waarde:
- De
SUBTIME()
functie. - De
ADDTIME()
functie (als u een negatief bedrag opgeeft, wordt dat bedrag afgetrokken van de datetime-waarde). - De
SUBDATE()
functie (dit is een synoniem voorDATE_SUB()
wanneer gebruikt met dezelfde syntaxis). - De
DATE_ADD()
functie (als u een negatief bedrag opgeeft, wordt dat bedrag afgetrokken van de datetime-waarde). - De
ADDDATE()
functie (als u een negatief bedrag opgeeft, wordt dat bedrag afgetrokken van de datetime-waarde).