Oto kilka opcji odejmowania jednej lub więcej minut od wyrażenia daty i godziny w MariaDB.
SUBTIME() Funkcja
SUBTIME() odejmuje określoną ilość czasu od wartości czasu lub daty i godziny.
Przykład:
SELECT SUBTIME('2021-05-01 10:00:00', '00:30:00'); Wynik:
+--------------------------------------------+
| SUBTIME('2021-05-01 10:00:00', '00:30:00') |
+--------------------------------------------+
| 2021-05-01 09:30:00 |
+--------------------------------------------+ Możesz także zmienić inne jednostki czasu, takie jak godziny, sekundy itp.
DATE_SUB() Funkcja
DATE_SUB() Funkcja pozwala odjąć określoną liczbę jednostek daty/czasu od wyrażenia daty lub daty i godziny. Dlatego możemy użyć tej funkcji do zwrócenia wartości daty i godziny pomniejszonej o określoną liczbę minut.
Przykład:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 MINUTE); Wynik:
+-----------------------------------------------------+
| DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 MINUTE) |
+-----------------------------------------------------+
| 2021-05-01 09:30:00 |
+-----------------------------------------------------+
Zwróć uwagę, że MINUTE słowo kluczowe pozostaje w liczbie innej niż liczba mnoga, niezależnie od tego, czy odejmujemy minutę, czy więcej.
Możesz także użyć złożonych jednostek daty i godziny. Na przykład możesz zrobić minuty i sekundy za jednym razem.
Przykład:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND); Wynik:
+-----------------------------------------------------------------+
| DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND) |
+-----------------------------------------------------------------+
| 2021-05-01 09:44:30 |
+-----------------------------------------------------------------+ Przejście samej daty
Oto, co się stanie, jeśli podamy tylko wartość daty do DATE_SUB() funkcja:
SELECT DATE_SUB('2021-05-01', INTERVAL 30 MINUTE); Wynik:
+--------------------------------------------+
| DATE_SUB('2021-05-01', INTERVAL 30 MINUTE) |
+--------------------------------------------+
| 2021-04-30 23:30:00 |
+--------------------------------------------+
Zakłada, że czas zaczyna się o 00:00:00, więc MINUTE kwota jest od tego odejmowana.
Operator odejmowania (- )
Innym sposobem odjęcia jednej lub więcej minut od wartości daty i godziny jest użycie operatora odejmowania (- ), znany również jako operator minus.
Przykład:
SELECT '2021-05-01 10:00:00' - INTERVAL 30 MINUTE; Wynik:
+--------------------------------------------+ | '2021-05-01 10:00:00' - INTERVAL 30 MINUTE | +--------------------------------------------+ | 2021-05-01 09:30:00 | +--------------------------------------------+
Operator dodawania (+ )
Możesz alternatywnie użyć operatora dodawania (+ ) wraz z kwotą ujemną.
Przykład:
SELECT '2021-05-01 10:00:00' + INTERVAL -30 MINUTE; Wynik:
+---------------------------------------------+ | '2021-05-01 10:00:00' + INTERVAL -30 MINUTE | +---------------------------------------------+ | 2021-05-01 09:30:00 | +---------------------------------------------+
Inne sposoby odejmowania minut
Oto kilka innych metod, których możesz użyć, aby odjąć jedną lub więcej minut od wartości daty i godziny:
ADDTIME()funkcja (podanie kwoty ujemnej spowoduje odjęcie tej kwoty od wartości daty/godziny).SUBDATE()funkcja (jest to synonimDATE_SUB()gdy jest używany z tą samą składnią).DATE_ADD()funkcja (podanie kwoty ujemnej spowoduje odjęcie tej kwoty od wartości daty i godziny).ADDDATE()funkcja (podanie kwoty ujemnej spowoduje odjęcie tej kwoty od wartości daty i godziny).