W MariaDB, CURTIME() 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.
Masz również możliwość określenia precyzji w mikrosekundach.
Składnia
Składnia wygląda tak:
CURTIME([precision])
Gdzie precision jest opcjonalnym argumentem, który określa precyzję w mikrosekundach.
Ma również następujące synonimy:
CURRENT_TIME
CURRENT_TIME([precision]) Przykład
Oto przykład:
SELECT CURTIME(); Wynik:
+-----------+ | CURTIME() | +-----------+ | 09:30:12 | +-----------+
Kontekst numeryczny
Kiedy CURTIME() jest używany w kontekście numerycznym, wynikowy czas jest w HHMMSS.uuuuuu format.
Przykład:
SELECT
CURTIME(),
CURTIME() + 0; Wynik:
+-----------+---------------+ | CURTIME() | CURTIME() + 0 | +-----------+---------------+ | 09:31:39 | 93139 | +-----------+---------------+
Precyzja
Oto przykład określania dokładności w mikrosekundach:
SELECT
CURTIME(3),
CURTIME(3) + 0; Wynik:
+--------------+----------------+ | CURTIME(3) | CURTIME(3) + 0 | +--------------+----------------+ | 09:32:44.678 | 93244.678 | +--------------+----------------+
Maksymalna wartość precyzji w mikrosekundach wynosi 6. Oto, co się dzieje, gdy dla precyzji zostanie przekazana wyższa liczba:
SELECT CURTIME(12); Wynik:
ERROR 1426 (42000): Too big precision 12 specified for 'curtime'. Maximum is 6
Synonimy
CURRENT_TIME i CURRENT_TIME() są synonimami CURTIME() . Dlatego możemy użyć jednego z nich, aby uzyskać ten sam wynik.
Przykład:
SELECT
CURTIME(),
CURRENT_TIME,
CURRENT_TIME(); Wynik:
+-----------+--------------+----------------+ | CURTIME() | CURRENT_TIME | CURRENT_TIME() | +-----------+--------------+----------------+ | 09:33:32 | 09:33:32 | 09:33:32 | +-----------+--------------+----------------+
Dodawanie do aktualnego czasu
Istnieje wiele sposobów wykonywania arytmetyki na wartościach czasu w MariaDB. Możesz użyć takich metod, aby dodać liczbę godzin, minut, sekund itp.
Oto przykład użycia operatora dodawania (+ ) aby dodać 2 godziny do czasu:
SELECT
CURTIME(),
CURTIME() + INTERVAL 2 HOUR; Wynik:
+-----------+-----------------------------+ | CURTIME() | CURTIME() + INTERVAL 2 HOUR | +-----------+-----------------------------+ | 09:35:03 | 11:35:03 | +-----------+-----------------------------+
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 | +-----------+-----------------------------+ | 09:35:41 | 07:35:41 | +-----------+-----------------------------+
Zobacz funkcje takie jak SUBTIME() dla alternatywnego sposobu odejmowania od aktualnego czasu.