W MariaDB:CURRENT_TIME i CURRENT_TIME() są synonimami CURTIME() .
CURTIME() funkcja to wbudowana funkcja daty i czasu, która zwraca aktualny czas.
Czas jest zwracany w postaci 'HH:MM:SS' lub HHMMSS.uuuuuu format, w zależności od tego, czy funkcja jest używana w kontekście łańcuchowym czy liczbowym.
Składnia
CURRENT_TIME() może być używany w następujący sposób:
CURRENT_TIME
CURRENT_TIME([precision])
Gdzie precision to precyzja w mikrosekundach.
Możesz alternatywnie wywołać CURTIME() tak:
CURTIME([precision]) Przykład
Oto przykład:
SELECT
CURRENT_TIME,
CURRENT_TIME(),
CURTIME(); Wynik:
+--------------+----------------+-----------+ | CURRENT_TIME | CURRENT_TIME() | CURTIME() | +--------------+----------------+-----------+ | 09:59:13 | 09:59:13 | 09:59:13 | +--------------+----------------+-----------+
Widzimy, że wszystkie trzy zwracają ten sam wynik.
Kontekst numeryczny
Gdy jest używany w kontekście numerycznym, wynikowy czas jest w HHMMSS.uuuuuu format.
Przykład:
SELECT
CURRENT_TIME,
CURRENT_TIME + 0,
CURRENT_TIME() + 0; Wynik:
+--------------+------------------+--------------------+ | CURRENT_TIME | CURRENT_TIME + 0 | CURRENT_TIME() + 0 | +--------------+------------------+--------------------+ | 10:00:29 | 100029 | 100029 | +--------------+------------------+--------------------+
Precyzja
W przypadku użycia z CURRENT_TIME([precision]) składni, możesz określić mikrosekundową precyzję wyniku.
Przykład:
SELECT
CURRENT_TIME(3),
CURRENT_TIME(3) + 0; Wynik:
+-----------------+---------------------+ | CURRENT_TIME(3) | CURRENT_TIME(3) + 0 | +-----------------+---------------------+ | 10:02:00.088 | 100200.088 | +-----------------+---------------------+
Maksymalna wartość precyzji w mikrosekundach wynosi 6. Oto, co się dzieje, gdy dla precyzji zostanie przekazana wyższa liczba:
SELECT CURRENT_TIME(12); Wynik:
ERROR 1426 (42000): Too big precision 12 specified for 'curtime'. Maximum is 6
Dodawanie do aktualnego czasu
Istnieje wiele sposobów wykonywania arytmetyki na datach i godzinach w MariaDB. Możesz użyć takich metod, aby dodać liczbę dni, tygodni, godzin, minut itp.
Oto przykład użycia operatora dodawania (+ ) aby dodać 2 godziny do czasu:
SELECT
CURRENT_TIME,
CURRENT_TIME + INTERVAL 2 HOUR; Wynik:
+--------------+--------------------------------+ | CURRENT_TIME | CURRENT_TIME + INTERVAL 2 HOUR | +--------------+--------------------------------+ | 10:04:19 | 12:04:19 | +--------------+--------------------------------+
Zobacz także funkcje takie jak ADDTIME() dla alternatywnego sposobu dodawania aktualnego czasu.
Odejmowanie od aktualnego czasu
Oto przykład użycia operatora odejmowania (- ) aby odjąć 2 godziny od aktualnego czasu:
SELECT
CURTIME(),
CURTIME() - INTERVAL 2 HOUR; Wynik:
+-----------+-----------------------------+ | CURTIME() | CURTIME() - INTERVAL 2 HOUR | +-----------+-----------------------------+ | 10:05:14 | 08:05:14 | +-----------+-----------------------------+
Zobacz funkcje takie jak SUBTIME() dla alternatywnego sposobu odejmowania od aktualnego czasu.