No MariaDB,
SECOND()
é uma função de data e hora integrada que retorna a parte de segundos de uma determinada expressão de tempo. Ele aceita um argumento, que é o tempo do qual você deseja extrair os segundos.
Os segundos são retornados como um número no intervalo
0
para 59
. Sintaxe
A sintaxe fica assim:
SECOND(time)
Onde
time
é a expressão de tempo para obter os segundos. Exemplo
Aqui está um exemplo:
SELECT SECOND('10:30:45');
Resultado:
+--------------------+ | SECOND('10:30:45') | +--------------------+ | 45 | +--------------------+
Aqui está outro exemplo que inclui microssegundos:
SELECT SECOND('10:30:45.123456');
Resultado:
+---------------------------+ | SECOND('10:30:45.123456') | +---------------------------+ | 45 | +---------------------------+
De qualquer forma, o resultado é o mesmo.
Valores de data e hora
Também funciona com valores de data e hora:
SELECT SECOND('2030-02-01 10:30:45');
Resultado:
+-------------------------------+ | SECOND('2030-02-01 10:30:45') | +-------------------------------+ | 45 | +-------------------------------+
Data atual
Podemos passar
NOW()
como argumento datetime para usar a hora atual:SELECT
NOW(),
SECOND(NOW());
Resultado:
+---------------------+---------------+ | NOW() | SECOND(NOW()) | +---------------------+---------------+ | 2021-05-16 14:32:40 | 40 | +---------------------+---------------+
Argumentos inválidos
Ao passar um argumento de tempo inválido,
SECOND()
retorna null
:SELECT SECOND('10:75:00');
Resultado:
+--------------------+ | SECOND('10:75:00') | +--------------------+ | NULL | +--------------------+
Argumento ausente
Chamando
SECOND()
com o número errado de argumentos, ou sem passar nenhum argumento, resulta em um erro:SELECT SECOND();
Resultado:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1
E outro exemplo:
SELECT SECOND('10:30:45', '06:30:45');
Resultado:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ' '06:30:45')' at line 1