Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 MS SQL 2008 Получение времени в формате чччч:мм из int?  [new]
Pvase
Member

Откуда:
Сообщений: 990
В Базе хранятся отрезки времени в виде числа int. Отрезки в минутах, т.е. если длина временного промежутка 3 часа 14 минут, то это будет 3*60+14.
Как получить обратное преобразование - это понятно:
Cast(Tab1.[Time]/60 AS VARCHAR(4)) + ':'+Cast(Tab1.[Time] - ((Tab1.[Time]/60)*60) AS CHAR(2))

Но вот как вывести с лидирующими нулями, т.е. чтобы было 0003:14, или например 0214:09, т.е. 214 часов 09 минут (больше 24 часов).
13 июл 12, 17:22    [12864562]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL 2008 Получение времени в формате чччч:мм из int?  [new]
Yasha123
Member

Откуда:
Сообщений: 1837
right('000' + Cast(Tab1.[Time]/60 AS VARCHAR(4)), 4) + ':'+right('0' +Cast(Tab1.[Time] - ((Tab1.[Time]/60)*60) AS varCHAR(2)), 2)
13 июл 12, 17:47    [12864665]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL 2008 Получение времени в формате чччч:мм из int?  [new]
Pvase
Member

Откуда:
Сообщений: 990
Yasha123
right('000' + Cast(Tab1.[Time]/60 AS VARCHAR(4)), 4) + ':'+right('0' +Cast(Tab1.[Time] - ((Tab1.[Time]/60)*60) AS varCHAR(2)), 2)


Спасибо, совсем вылетело с головы что так просто делается.
13 июл 12, 17:50    [12864685]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL 2008 Получение времени в формате чччч:мм из int?  [new]
iap
Member

Откуда: Москва
Сообщений: 47001
REPLACE(STR(Tab1.[Time]/60,4)+':'+STR(Tab1.[Time]%60,2),' ','0')
13 июл 12, 19:17    [12865000]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить