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.