W MariaDB, ADDTIME() to wbudowana funkcja daty i godziny, która dodaje kwotę do wyrażenia czasu lub daty i godziny.
Umożliwia zmianę wyrażenia godziny lub daty i godziny przez przekazanie tego wyrażenia, a także wyrażenia godziny, które można dodać do tego wyrażenia. Możesz przekazać wartość ujemną, jeśli chcesz odjąć od wyrażenia czasu.
Składnia
Składnia wygląda tak:
ADDTIME(expr1,expr2)
Gdzie expr1 jest wyrażeniem czasu lub daty i godziny, a expr2 jest wyrażeniem czasu.
Przykład
Oto przykład:
SELECT ADDTIME('10:00:00', '02:30:45'); Wynik:
+---------------------------------+
| ADDTIME('10:00:00', '02:30:45') |
+---------------------------------+
| 12:30:45 |
+---------------------------------+ Wyrażenia daty i godziny
Pierwszy argument może być również wyrażeniem daty i godziny:
SELECT ADDTIME('2021-05-01 10:00:00', '22:30:45'); Wynik:
+--------------------------------------------+
| ADDTIME('2021-05-01 10:00:00', '22:30:45') |
+--------------------------------------------+
| 2021-05-02 08:30:45 |
+--------------------------------------------+ W tym przypadku dodany czas wystarczył, aby przesunąć datę na następny dzień, co znajduje odzwierciedlenie w wyniku.
Wyrażenia czasowe w luźniejszym formacie
MariaDB umożliwia przypisanie czasów w luźniejszych formatach, takich jak pominięcie wiodących zer i podanie wartości dla dnia.
Dlatego możemy to zrobić:
SELECT ADDTIME('2021-05-01 10:00:00', '366 1:1:1.123456'); Wynik:
+----------------------------------------------------+
| ADDTIME('2021-05-01 10:00:00', '366 1:1:1.123456') |
+----------------------------------------------------+
| 2022-05-02 11:01:01.123456 |
+----------------------------------------------------+ Przedziały ujemne
Podanie ujemnego przedziału dla części dnia powoduje odjęcie tej kwoty od godziny/daty i godziny.
Przykład:
SELECT ADDTIME('2021-05-01 10:00:00', '-366 1:1:1.123456'); Wynik:
+-----------------------------------------------------+
| ADDTIME('2021-05-01 10:00:00', '-366 1:1:1.123456') |
+-----------------------------------------------------+
| 2020-04-30 08:58:58.876544 |
+-----------------------------------------------------+ Argumenty zerowe
Jeśli jakikolwiek argument ma wartość null , wynik to null :
SELECT
ADDTIME('10:00:00', null),
ADDTIME(null, '02:30:45'),
ADDTIME(null, null); Wynik:
+---------------------------+---------------------------+---------------------+
| ADDTIME('10:00:00', null) | ADDTIME(null, '02:30:45') | ADDTIME(null, null) |
+---------------------------+---------------------------+---------------------+
| NULL | NULL | NULL |
+---------------------------+---------------------------+---------------------+ Brakujący argument
Wywołanie ADDTIME() z niewłaściwą liczbą argumentów lub bez przekazania jakichkolwiek argumentów powoduje błąd:
SELECT ADDTIME(); Wynik:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'ADDTIME'