Zde je několik možností pro odečtení jedné nebo více minut od výrazu datetime v MariaDB.
SUBTIME()
Funkce
SUBTIME()
odečte dané množství času od hodnoty času nebo data a času.
Příklad:
SELECT SUBTIME('2021-05-01 10:00:00', '00:30:00');
Výsledek:
+--------------------------------------------+ | SUBTIME('2021-05-01 10:00:00', '00:30:00') | +--------------------------------------------+ | 2021-05-01 09:30:00 | +--------------------------------------------+
Můžete také změnit další časové jednotky, jako jsou hodiny, sekundy atd.
DATE_SUB()
Funkce
DATE_SUB()
Funkce umožňuje odečíst určitý počet jednotek data/času od výrazu data nebo data a času. Proto můžeme tuto funkci použít k vrácení hodnoty datetime mínus určitý počet minut.
Příklad:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 MINUTE);
Výsledek:
+-----------------------------------------------------+ | DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 MINUTE) | +-----------------------------------------------------+ | 2021-05-01 09:30:00 | +-----------------------------------------------------+
Všimněte si, že MINUTE
klíčové slovo zůstává nemnožné bez ohledu na to, zda odečítáme jednu minutu nebo více.
Můžete také použít složené jednotky data a času. Můžete například dělat minuty a sekundy najednou.
Příklad:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND);
Výsledek:
+-----------------------------------------------------------------+ | DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND) | +-----------------------------------------------------------------+ | 2021-05-01 09:44:30 | +-----------------------------------------------------------------+
Předávání jen data
Co se stane, když do DATE_SUB()
poskytneme pouze hodnotu data funkce:
SELECT DATE_SUB('2021-05-01', INTERVAL 30 MINUTE);
Výsledek:
+--------------------------------------------+ | DATE_SUB('2021-05-01', INTERVAL 30 MINUTE) | +--------------------------------------------+ | 2021-04-30 23:30:00 | +--------------------------------------------+
Předpokládá, že čas začíná v 00:00:00, takže MINUTE
částka se od toho odečte.
Operátor odečítání (-
)
Dalším způsobem, jak odečíst jednu nebo více minut od hodnoty datetime, je použít operátor odečítání (-
), také známý jako operátor mínus.
Příklad:
SELECT '2021-05-01 10:00:00' - INTERVAL 30 MINUTE;
Výsledek:
+--------------------------------------------+ | '2021-05-01 10:00:00' - INTERVAL 30 MINUTE | +--------------------------------------------+ | 2021-05-01 09:30:00 | +--------------------------------------------+
Operátor přidání (+
)
Alternativně můžete použít operátor sčítání (+
) spolu se zápornou částkou.
Příklad:
SELECT '2021-05-01 10:00:00' + INTERVAL -30 MINUTE;
Výsledek:
+---------------------------------------------+ | '2021-05-01 10:00:00' + INTERVAL -30 MINUTE | +---------------------------------------------+ | 2021-05-01 09:30:00 | +---------------------------------------------+
Další způsoby odečítání minut
Zde je několik dalších přístupů, které můžete použít k odečtení jedné nebo více minut od hodnoty datetime:
ADDTIME()
funkce (zadáním záporné částky se tato částka odečte od hodnoty datetime).SUBDATE()
funkce (toto je synonymum proDATE_SUB()
při použití se stejnou syntaxí).DATE_ADD()
funkce (zadáním záporné částky se tato částka odečte od hodnoty datetime).ADDDATE()
funkce (zadáním záporné částky se tato částka odečte od hodnoty datetime).