Här är några alternativ för att subtrahera en eller flera minuter från ett datetime-uttryck i MariaDB.
SUBTIME()
Funktion
SUBTIME()
subtraherar en given tidsperiod från ett värde för tid eller datum.
Exempel:
SELECT SUBTIME('2021-05-01 10:00:00', '00:30:00');
Resultat:
+--------------------------------------------+ | SUBTIME('2021-05-01 10:00:00', '00:30:00') | +--------------------------------------------+ | 2021-05-01 09:30:00 | +--------------------------------------------+
Du kan också ändra andra tidsenheter, såsom timmar, sekunder, etc.
DATE_SUB()
Funktion
DATE_SUB()
Med funktionen kan du subtrahera ett visst antal datum-/tidsenheter från ett datum- eller datumuttryck. Därför kan vi använda den här funktionen för att returnera datetime-värdet, minus ett visst antal minuter.
Exempel:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 MINUTE);
Resultat:
+-----------------------------------------------------+ | DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 MINUTE) | +-----------------------------------------------------+ | 2021-05-01 09:30:00 | +-----------------------------------------------------+
Observera att MINUTE
sökordet förblir icke-plural oavsett om vi subtraherar en minut eller mer.
Du kan också använda sammansatta datum- och tidsenheter. Du kan till exempel göra minuter och sekunder på en gång.
Exempel:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND);
Resultat:
+-----------------------------------------------------------------+ | DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND) | +-----------------------------------------------------------------+ | 2021-05-01 09:44:30 | +-----------------------------------------------------------------+
Passar Just the Date
Här är vad som händer om vi bara tillhandahåller ett datumvärde till DATE_SUB()
funktion:
SELECT DATE_SUB('2021-05-01', INTERVAL 30 MINUTE);
Resultat:
+--------------------------------------------+ | DATE_SUB('2021-05-01', INTERVAL 30 MINUTE) | +--------------------------------------------+ | 2021-04-30 23:30:00 | +--------------------------------------------+
Det förutsätter att tiden börjar kl. 00:00:00, så MINUTE
beloppet dras från det.
Subtraktionsoperatören (-
)
Ett annat sätt att subtrahera en eller flera minuter från ett datetime-värde är att använda subtraktionsoperatorn (-
), även känd som minusoperatorn.
Exempel:
SELECT '2021-05-01 10:00:00' - INTERVAL 30 MINUTE;
Resultat:
+--------------------------------------------+ | '2021-05-01 10:00:00' - INTERVAL 30 MINUTE | +--------------------------------------------+ | 2021-05-01 09:30:00 | +--------------------------------------------+
Tilläggsoperatören (+
)
Du kan alternativt använda additionsoperatorn (+
) tillsammans med ett negativt belopp.
Exempel:
SELECT '2021-05-01 10:00:00' + INTERVAL -30 MINUTE;
Resultat:
+---------------------------------------------+ | '2021-05-01 10:00:00' + INTERVAL -30 MINUTE | +---------------------------------------------+ | 2021-05-01 09:30:00 | +---------------------------------------------+
Andra sätt att subtrahera minuter
Här är några andra metoder du kan använda för att subtrahera en eller flera minuter från ett datum och tid:
ADDTIME()
funktion (om du anger ett negativt belopp kommer det beloppet att subtraheras från datetime-värdet).SUBDATE()
funktion (detta är en synonym förDATE_SUB()
när den används med samma syntax).DATE_ADD()
funktion (om du anger ett negativt belopp kommer det beloppet att subtraheras från datetime-värdet).ADDDATE()
funktion (om du anger ett negativt belopp kommer det beloppet att subtraheras från datetime-värdet).