sybase sql способ преобразования значения секунд в часы, минуты и секунды - PullRequest
1 голос
/ 04 марта 2009

В sybase есть ли встроенные функции для преобразования значения секунд в часы, минуты и секунды?

Ответы [ 4 ]

3 голосов
/ 07 марта 2014

Если вы хотите, чтобы ваши результаты форматировались как часы: минуты: секунды

select convert(varchar(8), dateadd(SECOND, 65, '1970-01-01'), 108)

Проход 65, так как количество секунд, которое мы получаем, приводит к ...

00:01:05
2 голосов
/ 04 марта 2009

Я не знаю, есть ли такая функция, но если ее нет, простые формулы:

 HH = floor(seconds / 3600)
 MM = floor(seconds / 60) % 60
 SS = seconds % 60
1 голос
/ 04 марта 2009

Если это значение ограничено 1 днем, вы можете использовать это:

datepart(hour, dateadd(second, value, '1900-01-01'))
datepart(minute, dateadd(second, value, '1900-01-01'))
datepart(second, dateadd(second, value, '1900-01-01'))
0 голосов
/ 29 мая 2009

Распространенным измерением в секундах является «секунды с начала эпохи Unix» или «time_t». Если это то, что вы имеете в виду, вы можете сделать что-то вроде

select dateadd(SECOND, 123456, '1970-01-01')

и у вас будет значение datetime, которое можно деконструировать в различные части через DATEPART

pjjH

...