MariaDB
 sql >> Base de Dados >  >> RDS >> MariaDB

MariaDB CURRENT_TIME() explicado


No MariaDB, CURRENT_TIME e CURRENT_TIME() são sinônimos de CURTIME() .

O CURTIME() function é uma função de data e hora integrada que retorna a hora atual.

A hora é retornada em 'HH:MM:SS' ou HHMMSS.uuuuuu formato, dependendo se a função está sendo usada em uma string ou contexto numérico.

Sintaxe


CURRENT_TIME() pode ser usado das seguintes maneiras:
CURRENT_TIME
CURRENT_TIME([precision]) 

Onde precision é a precisão de microssegundos.

Você também pode chamar CURTIME() assim:
CURTIME([precision]) 

Exemplo


Aqui está um exemplo:
SELECT 
    CURRENT_TIME,
    CURRENT_TIME(),
    CURTIME(); 

Resultado:
+--------------+----------------+-----------+| CURRENT_TIME | CURRENT_TIME() | CURTIME() |+--------------+----------------+-----------+| 09:59:13 | 09:59:13 | 09:59:13 |+--------------+----------------+----------- +

Podemos ver que todos os três retornam o mesmo resultado.

Contexto Numérico


Quando usado em um contexto numérico, o tempo resultante está em HHMMSS.uuuuuu formato.

Exemplo:
SELECT 
    CURRENT_TIME,
    CURRENT_TIME + 0,
    CURRENT_TIME() + 0; 

Resultado:
+--------------+------------------+------------ --------+| CURRENT_TIME | CURRENT_TIME + 0 | CURRENT_TIME() + 0 |+--------------+------------------+--------- -----------+| 10:00:29 | 100029 | 100029 |+--------------+------------------+------------- -------+

Precisão


Quando usado com o CURRENT_TIME([precision]) sintaxe, você pode especificar a precisão de microssegundos para o resultado.

Exemplo:
SELECT 
    CURRENT_TIME(3),
    CURRENT_TIME(3) + 0; 

Resultado:
+-----------------+---------------------+| CURRENT_TIME(3) | CURRENT_TIME(3) + 0 |+-----------------+--------------------------------+| 10:02:00.088 | 100200.088 |+-----------------+--------------------------------+

O valor máximo para a precisão de microssegundos é 6. Veja o que acontece quando um número mais alto é passado para a precisão:
SELECT CURRENT_TIME(12); 

Resultado:
ERRO 1426 (42000):Precisão muito grande 12 especificada para 'curtime'. O máximo é 6

Adicionando à hora atual


Há muitas maneiras de realizar aritmética em datas e horas no MariaDB. Você pode usar esses métodos para adicionar um número de dias, semanas, horas, minutos, etc.

Aqui está um exemplo de uso do operador de adição (+ ) para adicionar 2 horas ao tempo:
SELECT 
    CURRENT_TIME,
    CURRENT_TIME + INTERVAL 2 HOUR; 

Resultado:
+--------------+------------------------------- -+| CURRENT_TIME | CURRENT_TIME + INTERVAL 2 HOUR |+--------------+---------------------------- ----+| 10:04:19 | 12:04:19 |+--------------+---------------------------- ----+

Veja também funções como ADDTIME() para uma maneira alternativa de adicionar à hora atual.

Subtraindo da hora atual


Aqui está um exemplo de uso do operador de subtração (- ) para subtrair 2 horas da hora atual:
SELECT 
    CURTIME(),
    CURTIME() - INTERVAL 2 HOUR; 

Resultado:
+------------+-----------------------------+| CURTIME() | CURTIME() - INTERVAL 2 HOUR |+-----------+----------------------------- +| 10:05:14 | 08:05:14 |+-----------+-----------------------------+ 
Veja funções como SUBTIME() para uma maneira alternativa de subtrair da hora atual.