I MariaDB, CURRENT_TIME
og CURRENT_TIME()
er synonymer for CURTIME()
.
CURTIME()
funktion er en indbygget dato- og tidsfunktion, der returnerer det aktuelle klokkeslæt.
Tiden returneres i enten 'HH:MM:SS'
eller HHMMSS.uuuuuu
format, afhængigt af om funktionen bruges i en streng eller numerisk kontekst.
Syntaks
CURRENT_TIME()
kan bruges på følgende måder:
CURRENT_TIME
CURRENT_TIME([precision])
Hvor precision
er mikrosekunds præcision.
Du kan alternativt kalde CURTIME()
sådan her:
CURTIME([precision])
Eksempel
Her er et eksempel:
SELECT
CURRENT_TIME,
CURRENT_TIME(),
CURTIME();
Resultat:
+--------------+----------------+-----------+ | CURRENT_TIME | CURRENT_TIME() | CURTIME() | +--------------+----------------+-----------+ | 09:59:13 | 09:59:13 | 09:59:13 | +--------------+----------------+-----------+
Vi kan se, at alle tre giver det samme resultat.
Numerisk kontekst
Når det bruges i en numerisk kontekst, er den resulterende tid i HHMMSS.uuuuuu
format.
Eksempel:
SELECT
CURRENT_TIME,
CURRENT_TIME + 0,
CURRENT_TIME() + 0;
Resultat:
+--------------+------------------+--------------------+ | CURRENT_TIME | CURRENT_TIME + 0 | CURRENT_TIME() + 0 | +--------------+------------------+--------------------+ | 10:00:29 | 100029 | 100029 | +--------------+------------------+--------------------+
Nøjagtighed
Når det bruges med CURRENT_TIME([precision])
syntaks, kan du angive mikrosekunders præcision for resultatet.
Eksempel:
SELECT
CURRENT_TIME(3),
CURRENT_TIME(3) + 0;
Resultat:
+-----------------+---------------------+ | CURRENT_TIME(3) | CURRENT_TIME(3) + 0 | +-----------------+---------------------+ | 10:02:00.088 | 100200.088 | +-----------------+---------------------+
Den maksimale værdi for mikrosekunders præcision er 6. Her er, hvad der sker, når et højere tal passeres for præcisionen:
SELECT CURRENT_TIME(12);
Resultat:
ERROR 1426 (42000): Too big precision 12 specified for 'curtime'. Maximum is 6
Tilføjelse til den aktuelle tid
Der er mange måder at udføre aritmetik på datoer og tidspunkter i MariaDB. Du kan bruge sådanne metoder til at tilføje et antal dage, uger, timer, minutter osv.
Her er et eksempel på brug af additionsoperatoren (+
) for at tilføje 2 timer til tiden:
SELECT
CURRENT_TIME,
CURRENT_TIME + INTERVAL 2 HOUR;
Resultat:
+--------------+--------------------------------+ | CURRENT_TIME | CURRENT_TIME + INTERVAL 2 HOUR | +--------------+--------------------------------+ | 10:04:19 | 12:04:19 | +--------------+--------------------------------+
Se også funktioner som ADDTIME()
for en alternativ måde at tilføje til det aktuelle tidspunkt.
Træk fra det aktuelle tidspunkt
Her er et eksempel på brug af subtraktionsoperatoren (-
) for at trække 2 timer fra det aktuelle tidspunkt:
SELECT
CURTIME(),
CURTIME() - INTERVAL 2 HOUR;
Resultat:
+-----------+-----------------------------+ | CURTIME() | CURTIME() - INTERVAL 2 HOUR | +-----------+-----------------------------+ | 10:05:14 | 08:05:14 | +-----------+-----------------------------+
Se funktioner som SUBTIME()
for en alternativ måde at trække fra den aktuelle tid.