В sybase есть ли встроенные функции для преобразования значения секунд в часы, минуты и секунды?
Если вы хотите, чтобы ваши результаты форматировались как часы: минуты: секунды
select convert(varchar(8), dateadd(SECOND, 65, '1970-01-01'), 108)
Проход 65, так как количество секунд, которое мы получаем, приводит к ...
00:01:05
Я не знаю, есть ли такая функция, но если ее нет, простые формулы:
HH = floor(seconds / 3600) MM = floor(seconds / 60) % 60 SS = seconds % 60
Если это значение ограничено 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'))
Распространенным измерением в секундах является «секунды с начала эпохи Unix» или «time_t». Если это то, что вы имеете в виду, вы можете сделать что-то вроде
select dateadd(SECOND, 123456, '1970-01-01')
и у вас будет значение datetime, которое можно деконструировать в различные части через DATEPART
pjjH