SQL конвертировать военное время в время - PullRequest
0 голосов
/ 23 января 2019

У меня есть база данных sql, где часы в часах отображаются как военное время, но в числовом формате.Например, 907 равно 09:07am или 1514 равно 15:14pm

Можно ли преобразовать это в SQL?

В настоящее время я вывожу в Excel и использую приведенную ниже формулу длярассчитать, но предпочел бы сделать все это в SQL

TIMEVALUE(LEFT(IF(LEN(L30)=4,L30,CONCATENATE(0,L30)),2)&":"&MID(IF(LEN(L30)=4,L30,CONCATENATE(0,L30)),3,2)&":"&RIGHT(IF(LEN(L30)=4,L30,CONCATENATE(0,L30)),2))

Любая помощь вам будет присвоено

Спасибо

1 Ответ

0 голосов
/ 23 января 2019

Если вы хотите выводить как time значение:

select convert(time, dateadd(second, t/100 * 60 + t % 100, 0))
from (values (907), (1514)) v(t);

Если вы просто хотите вернуть строку:

select stuff(right('0' + convert(varchar(255), t), 4), 3, 0, ':')
from (values (907), (1514)) v(t);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...