MariaDB
 sql >> Baza danych >  >> RDS >> MariaDB

Odejmij sekundy od wartości daty i godziny w MariaDB

Oto kilka opcji odejmowania jednej lub więcej sekund 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:00:30');

Wynik:

+--------------------------------------------+
| SUBTIME('2021-05-01 10:00:00', '00:00:30') |
+--------------------------------------------+
| 2021-05-01 09:59:30                        |
+--------------------------------------------+

Możesz także zmienić inne jednostki czasu, takie jak godziny, minuty 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ę sekund.

Przykład:

SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 SECOND);

Wynik:

+-----------------------------------------------------+
| DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 SECOND) |
+-----------------------------------------------------+
| 2021-05-01 09:59:30                                 |
+-----------------------------------------------------+

Zwróć uwagę, że SECOND słowo kluczowe pozostaje w liczbie innej niż liczba mnoga, niezależnie od tego, czy odejmujesz jedną sekundę, 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:

SELECT DATE_SUB('2021-05-01', INTERVAL 30 SECOND);

Wynik:

+--------------------------------------------+
| DATE_SUB('2021-05-01', INTERVAL 30 SECOND) |
+--------------------------------------------+
| 2021-04-30 23:59:30                        |
+--------------------------------------------+

Zakłada, że ​​czas zaczyna się o 00:00:00, więc SECOND kwota jest od tego odejmowana.

Operator odejmowania (- )

Innym sposobem na odjęcie jednej lub więcej sekund 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 SECOND;

Wynik:

+--------------------------------------------+
| '2021-05-01 10:00:00' - INTERVAL 30 SECOND |
+--------------------------------------------+
| 2021-05-01 09:59:30                        |
+--------------------------------------------+

Operator dodawania (+ )

Możesz alternatywnie użyć operatora dodawania (+ ) wraz z kwotą ujemną.

Przykład:

SELECT '2021-05-01 10:00:00' + INTERVAL -30 SECOND;

Wynik:

+---------------------------------------------+
| '2021-05-01 10:00:00' + INTERVAL -30 SECOND |
+---------------------------------------------+
| 2021-05-01 09:59:30                         |
+---------------------------------------------+

Inne sposoby odejmowania sekund

Oto kilka innych podejść, których możesz użyć, aby odjąć jedną lub więcej sekund od wartości daty i godziny:

  • SUBTIME() funkcja.
  • ADDTIME() funkcja (podanie kwoty ujemnej spowoduje odjęcie tej kwoty od wartości daty/godziny).
  • SUBDATE() funkcja (jest to synonim DATE_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).

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak działa TRUNCATE() w MariaDB

  2. Jak FIELD() działa w MariaDB

  3. Jak TO_BASE64() działa w MariaDB?

  4. Popraw wydajność klastra Galera dla MySQL lub MariaDB

  5. Jak CURTIME() działa w MariaDB