В MariaDB, SECOND()
е вградена функция за дата и час, която връща секундната част от даден израз за време.
Той приема един аргумент, който е времето, от което искате да извлечете секундите.
Секундите се връщат като число в диапазона 0
до 59
.
Синтаксис
Синтаксисът е така:
SECOND(time)
Където time
е изразът за време, от който се получават секундите.
Пример
Ето един пример:
SELECT SECOND('10:30:45');
Резултат:
+--------------------+ | SECOND('10:30:45') | +--------------------+ | 45 | +--------------------+
Ето още един пример, който включва микросекунди:
SELECT SECOND('10:30:45.123456');
Резултат:
+---------------------------+ | SECOND('10:30:45.123456') | +---------------------------+ | 45 | +---------------------------+
Така или иначе резултатът е същият.
Стойности за дата и час
Работи и със стойности за дата и час:
SELECT SECOND('2030-02-01 10:30:45');
Резултат:
+-------------------------------+ | SECOND('2030-02-01 10:30:45') | +-------------------------------+ | 45 | +-------------------------------+
Текуща дата
Можем да предадем NOW()
като аргумент datetime за използване на текущото време:
SELECT
NOW(),
SECOND(NOW());
Резултат:
+---------------------+---------------+ | NOW() | SECOND(NOW()) | +---------------------+---------------+ | 2021-05-16 14:32:40 | 40 | +---------------------+---------------+
Невалидни аргументи
Когато се подаде невалиден аргумент за време, SECOND()
връща null
:
SELECT SECOND('10:75:00');
Резултат:
+--------------------+ | SECOND('10:75:00') | +--------------------+ | NULL | +--------------------+
Липсващ аргумент
Извикване на SECOND()
с грешен брой аргументи или без подаване на аргументи, води до грешка:
SELECT SECOND();
Резултат:
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
И още един пример:
SELECT SECOND('10:30:45', '06:30:45');
Резултат:
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