MariaDB
 sql >> база данни >  >> RDS >> MariaDB

Как работи SEC_TO_TIME() в MariaDB

В MariaDB, SEC_TO_TIME() е вградена функция за дата и час, която връща стойност за време въз основа на броя секунди, предоставени като аргументи.

Синтаксис

Синтаксисът е така:

SEC_TO_TIME(seconds) 

Пример

Ето един пример:

SELECT SEC_TO_TIME(1); 

Резултат:

+----------------+| SEC_TO_TIME(1) |+----------------+| 00:00:01 |+----------------+

Ето още един:

SELECT SEC_TO_TIME(18520); 

Резултат:

+-------------------+| SEC_TO_TIME(18520) |+-------------------+| 05:08:40 |+-------------------+

Секунди извън обхвата

Обхватът на резултата е ограничен до този на типа данни за време. Предупреждение се появява, ако аргументът съответства на стойност извън този диапазон. Диапазонът за стойностите на времето в MariaDB е '-838:59:59.999999' до '838:59:59.999999' .

Както и да е, ето пример за време със стойности, които са в горния край на техния приет диапазон:

SELECT SEC_TO_TIME(3020399); 

Резултат:

+---------------------+| SEC_TO_TIME(3020399) |+---------------------+| 838:59:59 |+---------------------+

И ето един, който излиза извън обхвата:

SELECT SEC_TO_TIME(3020400); 

Резултат:

+---------------------+| SEC_TO_TIME(3020400) |+---------------------+| 838:59:59 |+---------------------+1 ред в комплект, 1 предупреждение (0,000 сек)

Ето предупреждението:

SHOW WARNINGS; 

Резултат:

+--------+------+---------------------------- -----------------+| Ниво | Код | Съобщение |+---------+------+------------------------------ ----------------+| Предупреждение | 1292 | Съкратена неправилна стойност на секундите:'3020400' |+---------+------+----------------------- -----------------------+

Микросекунди

Можем да се доближим още по-близо до горния диапазон, като включим микросекунди:

SELECT SEC_TO_TIME(3020399.999999); 

Резултат:

+----------------------------+| SEC_TO_TIME(3020399.999999) |+----------------------------+| 838:59:59.999999 |+----------------------------+

Отрицателни аргументи

Предоставянето на отрицателна сума води до отрицателна времева стойност.

Пример:

SELECT SEC_TO_TIME(-3020399); 

Резултат:

<пред>+-----------------------+| SEC_TO_TIME(-3020399) |+-----------------------+| -838:59:59 |+-----------------------+

Липсващ аргумент

Извикване на SEC_TO_TIME() с грешен брой аргументи или без подаване на аргументи, води до грешка:

SELECT SEC_TO_TIME(); 

Резултат:

ГРЕШКА 1582 (42000):Неправилен брой на параметрите в извикването на функцията „SEC_TO_TIME“

И още един пример:

SELECT SEC_TO_TIME( 123, 456 ); 

Резултат:

ГРЕШКА 1582 (42000):Неправилен брой на параметрите в извикването на функцията „SEC_TO_TIME“

Намерете време

Вижте също MAKETIME() за конструиране на времева стойност от неговите часове, минути и секунди.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 2 начина за конкатенация на низове и числа в MariaDB

  2. Обявяване на ClusterControl 1.5 – включващ автоматична проверка на архивиране и качване в облак

  3. Повишаване на производителността чрез използване на разделяне на четене и запис на трафик от базата данни с Moodle 3.9

  4. Обработване на проблеми с репликацията от не-GTID към GTID MariaDB клъстери от база данни

  5. Сигнали и известия от SkySQL