Il SECOND() di MySQL la funzione viene utilizzata per restituire il secondo componente da un valore temporale.
Il valore restituito per questa funzione è compreso nell'intervallo 0 a 59 . Di seguito sono riportati esempi da dimostrare.
Sintassi
La sintassi di questa funzione è la seguente:
SECOND(time)
Dove time è il valore temporale da cui vuoi estrarre il componente secondi.
Esempio 1 – Utilizzo di base
Ecco un esempio da dimostrare.
SELECT SECOND('10:35:27');
Risultato:
+--------------------+
| SECOND('10:35:27') |
+--------------------+
| 27 |
+--------------------+
Esempio 2 – Valori temporali abbreviati senza due punti
Ecco un esempio che utilizza un valore di tempo abbreviato senza due punti.
SELECT SECOND('1227');
Risultato:
+----------------+
| SECOND('1227') |
+----------------+
| 27 |
+----------------+
Ed ecco un esempio in cui vengono fornite solo due cifre.
SELECT SECOND('27');
Risultato:
+--------------+
| SECOND('27') |
+--------------+
| 27 |
+--------------+
Quindi MySQL interpreta questo come 27 secondi.
Tuttavia, fai attenzione quando usi valori temporali abbreviati, poiché MySQL a volte può interpretarli in modo diverso da quello che potresti aspettarti.
Ecco cosa dice la documentazione di MySQL al riguardo:
Fai attenzione ad assegnare valori abbreviati a un TIME colonna. MySQL interpreta l'abbreviazione TIME valori con due punti come ora del giorno. Cioè, '11:12' significa '11:12:00' , non '00:11:12' . MySQL interpreta i valori abbreviati senza due punti partendo dal presupposto che le due cifre più a destra rappresentino i secondi (ovvero, come tempo trascorso anziché come ora del giorno). Ad esempio, potresti pensare a '1112' e 1112 nel senso di '11:12:00' (12 minuti dopo le 23), ma MySQL li interpreta come '00:11:12' (11 minuti, 12 secondi). Allo stesso modo, '12' e 12 vengono interpretati come '00:00:12' .
Esempio 3:un'alternativa
Puoi anche usare EXTRACT() funzione per estrarre i secondi (e altre parti di data/ora) da un valore di data/ora:
SELECT EXTRACT(SECOND FROM '10:35:27');
Risultato:
+---------------------------------+ | EXTRACT(SECOND FROM '10:35:27') | +---------------------------------+ | 27 | +---------------------------------+