Dans MariaDB, SECOND() est une fonction de date et d'heure intégrée qui renvoie la partie des secondes d'une expression de temps donnée.
Il accepte un argument, qui est l'heure à partir de laquelle vous voulez extraire les secondes.
Les secondes sont renvoyées sous la forme d'un nombre dans la plage 0 à 59 .
Syntaxe
La syntaxe ressemble à ceci :
SECOND(time)
Où time est l'expression de temps à partir de laquelle obtenir les secondes.
Exemple
Voici un exemple :
SELECT SECOND('10:30:45'); Résultat :
+--------------------+
| SECOND('10:30:45') |
+--------------------+
| 45 |
+--------------------+ Voici un autre exemple qui inclut les microsecondes :
SELECT SECOND('10:30:45.123456'); Résultat :
+---------------------------+
| SECOND('10:30:45.123456') |
+---------------------------+
| 45 |
+---------------------------+ Dans tous les cas, le résultat est le même.
Valeurs DateHeure
Cela fonctionne également avec les valeurs datetime :
SELECT SECOND('2030-02-01 10:30:45'); Résultat :
+-------------------------------+
| SECOND('2030-02-01 10:30:45') |
+-------------------------------+
| 45 |
+-------------------------------+ Date actuelle
Nous pouvons passer NOW() comme argument datetime pour utiliser l'heure actuelle :
SELECT
NOW(),
SECOND(NOW()); Résultat :
+---------------------+---------------+ | NOW() | SECOND(NOW()) | +---------------------+---------------+ | 2021-05-16 14:32:40 | 40 | +---------------------+---------------+
Arguments invalides
Lorsqu'un argument de temps non valide est passé, SECOND() renvoie null :
SELECT SECOND('10:75:00'); Résultat :
+--------------------+
| SECOND('10:75:00') |
+--------------------+
| NULL |
+--------------------+ Argument manquant
Appel de SECOND() avec le mauvais nombre d'arguments, ou sans passer d'arguments, génère une erreur :
SELECT SECOND(); Résultat :
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
Et un autre exemple :
SELECT SECOND('10:30:45', '06:30:45'); Résultat :
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