Hier zijn enkele opties voor het aftrekken van een of meer minuten 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:30:00'); Resultaat:
+--------------------------------------------+
| SUBTIME('2021-05-01 10:00:00', '00:30:00') |
+--------------------------------------------+
| 2021-05-01 09:30:00 |
+--------------------------------------------+ U kunt ook de andere tijdseenheden wijzigen, zoals uren, 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 minuten.
Voorbeeld:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 MINUTE); Resultaat:
+-----------------------------------------------------+
| DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 MINUTE) |
+-----------------------------------------------------+
| 2021-05-01 09:30:00 |
+-----------------------------------------------------+
Merk op dat de MINUTE zoekwoord blijft niet-meervoud, ongeacht of we één minuut of meer aftrekken.
U kunt ook samengestelde datum- en tijdseenheden gebruiken. U kunt bijvoorbeeld minuten en seconden in één keer doen.
Voorbeeld:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND); Resultaat:
+-----------------------------------------------------------------+
| DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND) |
+-----------------------------------------------------------------+
| 2021-05-01 09:44:30 |
+-----------------------------------------------------------------+ Alleen de datum doorgeven
Dit is wat er gebeurt als we alleen een datumwaarde geven aan de DATE_SUB() functie:
SELECT DATE_SUB('2021-05-01', INTERVAL 30 MINUTE); Resultaat:
+--------------------------------------------+
| DATE_SUB('2021-05-01', INTERVAL 30 MINUTE) |
+--------------------------------------------+
| 2021-04-30 23:30:00 |
+--------------------------------------------+
Het gaat ervan uit dat de tijd begint om 00:00:00, en dus de MINUTE het bedrag wordt daarvan afgetrokken.
De aftrekkingsoperator (- )
Een andere manier om een of meer minuten 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 MINUTE; Resultaat:
+--------------------------------------------+ | '2021-05-01 10:00:00' - INTERVAL 30 MINUTE | +--------------------------------------------+ | 2021-05-01 09:30:00 | +--------------------------------------------+
De toevoegingsoperator (+ )
U kunt ook de opteloperator gebruiken (+ ) samen met een negatief bedrag.
Voorbeeld:
SELECT '2021-05-01 10:00:00' + INTERVAL -30 MINUTE; Resultaat:
+---------------------------------------------+ | '2021-05-01 10:00:00' + INTERVAL -30 MINUTE | +---------------------------------------------+ | 2021-05-01 09:30:00 | +---------------------------------------------+
Andere manieren om minuten af te trekken
Hier zijn enkele andere benaderingen die u zou kunnen gebruiken om een of meer minuten van een datetime-waarde af te trekken:
- 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).