En MariaDB, SECOND()
es una función de fecha y hora integrada que devuelve la parte de los segundos de una expresión de tiempo dada.
Acepta un argumento, que es el tiempo del que desea extraer los segundos.
Los segundos se devuelven como un número en el rango 0
a 59
.
Sintaxis
La sintaxis es así:
SECOND(time)
Donde time
es la expresión de tiempo para obtener los segundos.
Ejemplo
He aquí un ejemplo:
SELECT SECOND('10:30:45');
Resultado:
+--------------------+ | SECOND('10:30:45') | +--------------------+ | 45 | +--------------------+
Aquí hay otro ejemplo que incluye microsegundos:
SELECT SECOND('10:30:45.123456');
Resultado:
+---------------------------+ | SECOND('10:30:45.123456') | +---------------------------+ | 45 | +---------------------------+
De cualquier manera, el resultado es el mismo.
Valores de fecha y hora
También funciona con valores de fecha y hora:
SELECT SECOND('2030-02-01 10:30:45');
Resultado:
+-------------------------------+ | SECOND('2030-02-01 10:30:45') | +-------------------------------+ | 45 | +-------------------------------+
Fecha actual
Podemos pasar NOW()
como argumento de fecha y hora para usar la hora actual:
SELECT
NOW(),
SECOND(NOW());
Resultado:
+---------------------+---------------+ | NOW() | SECOND(NOW()) | +---------------------+---------------+ | 2021-05-16 14:32:40 | 40 | +---------------------+---------------+
Argumentos no válidos
Cuando se pasa un argumento de tiempo no válido, SECOND()
devuelve null
:
SELECT SECOND('10:75:00');
Resultado:
+--------------------+ | SECOND('10:75:00') | +--------------------+ | NULL | +--------------------+
Argumento faltante
Llamando a SECOND()
con el número incorrecto de argumentos, o sin pasar ningún argumento, da como resultado un error:
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
Y otro ejemplo:
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