sql >> Database teknologi >  >> RDS >> MariaDB

MariaDB CURRENT_TIME() Forklaret

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.


  1. SQL tutorial for begyndere

  2. Returner basisdatatypen fra en SQL_variantværdi i SQL Server

  3. Bedste fremgangsmåder for SQL varchar kolonnelængde

  4. Hvordan opretter man en midlertidig funktion i PostgreSQL?