In MariaDB, SECOND()
è una funzione di data e ora incorporata che restituisce la parte dei secondi di una determinata espressione temporale.
Accetta un argomento, che è il tempo da cui vuoi estrarre i secondi.
I secondi vengono restituiti come un numero nell'intervallo 0
a 59
.
Sintassi
La sintassi è questa:
SECOND(time)
Dove time
è l'espressione del tempo da cui ottenere i secondi.
Esempio
Ecco un esempio:
SELECT SECOND('10:30:45');
Risultato:
+--------------------+ | SECOND('10:30:45') | +--------------------+ | 45 | +--------------------+
Ecco un altro esempio che include microsecondi:
SELECT SECOND('10:30:45.123456');
Risultato:
+---------------------------+ | SECOND('10:30:45.123456') | +---------------------------+ | 45 | +---------------------------+
In ogni caso, il risultato è lo stesso.
Valori di data e ora
Funziona anche con i valori datetime:
SELECT SECOND('2030-02-01 10:30:45');
Risultato:
+-------------------------------+ | SECOND('2030-02-01 10:30:45') | +-------------------------------+ | 45 | +-------------------------------+
Data attuale
Possiamo passare NOW()
come argomento datetime per utilizzare l'ora corrente:
SELECT
NOW(),
SECOND(NOW());
Risultato:
+---------------------+---------------+ | NOW() | SECOND(NOW()) | +---------------------+---------------+ | 2021-05-16 14:32:40 | 40 | +---------------------+---------------+
Argomenti non validi
Quando viene passato un argomento di tempo non valido, SECOND()
restituisce null
:
SELECT SECOND('10:75:00');
Risultato:
+--------------------+ | SECOND('10:75:00') | +--------------------+ | NULL | +--------------------+
Argomento mancante
Chiamando SECOND()
con il numero errato di argomenti, o senza passare alcun argomento, genera un errore:
SELECT SECOND();
Risultato:
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 un altro esempio:
SELECT SECOND('10:30:45', '06:30:45');
Risultato:
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