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

Откуда:
Сообщений: 28
Всем привет!
Подскажите пожалуйста, имеется столбец с типом данных int, нужно преобразовать в time формата 00:00:00, каким образом это проще всего сделать?

transtime
54777
23544
25921

Заранее спасибо.
26 апр 19, 10:27    [21872313]     Ответить | Цитировать Сообщить модератору
 Re: Преобразование int в time  [new]
Посетитель
Member

Откуда:
Сообщений: 1384
plorkie
Всем привет!
Подскажите пожалуйста, имеется столбец с типом данных int, нужно преобразовать в time формата 00:00:00, каким образом это проще всего сделать?

transtime
54777
23544
25921

Заранее спасибо.


а что эти данные означают? что в данных примерах на выходе должно быть?
26 апр 19, 10:31    [21872318]     Ответить | Цитировать Сообщить модератору
 Re: Преобразование int в time  [new]
Lanselot
Member

Откуда:
Сообщений: 76
plorkie,

DECLARE @T TABLE([transtime] int)
 
INSERT INTO @T([transtime])
VALUES(54777), (23544), (25921)

SELECT CAST(CONVERT(datetime, [transtime]/100000.0) AS time)
FROM @T
26 апр 19, 10:35    [21872321]     Ответить | Цитировать Сообщить модератору
 Re: Преобразование int в time  [new]
plorkie
Member

Откуда:
Сообщений: 28
Посетитель,
На выходе должно быть к примеру час:мин:сек (00:00:00)
26 апр 19, 10:41    [21872326]     Ответить | Цитировать Сообщить модератору
 Re: Преобразование int в time  [new]
plorkie
Member

Откуда:
Сообщений: 28
Lanselot,
Спасибо, а если это процедура и нам нужны данные заинсертить из одной таблицы в другую? То есть имеется структура таблицы, где есть поле transtime со значениями (15632, 43222.. и т.д) и нужно в другую таблицу вставить эти вэлью преобразов их в формат час:мин:сек 00:00:00
26 апр 19, 10:46    [21872329]     Ответить | Цитировать Сообщить модератору
 Re: Преобразование int в time  [new]
Lanselot
Member

Откуда:
Сообщений: 76
plorkie
Lanselot,
Спасибо, а если это процедура и нам нужны данные заинсертить из одной таблицы в другую? То есть имеется структура таблицы, где есть поле transtime со значениями (15632, 43222.. и т.д) и нужно в другую таблицу вставить эти вэлью преобразов их в формат час:мин:сек 00:00:00


Ну так и используйте выражение для вэлью
CAST(CONVERT(datetime, [transtime]/100000.0) AS time)
26 апр 19, 10:49    [21872331]     Ответить | Цитировать Сообщить модератору
 Re: Преобразование int в time  [new]
Посетитель
Member

Откуда:
Сообщений: 1384
plorkie
Посетитель,
На выходе должно быть к примеру час:мин:сек (00:00:00)


ну так 54777 - это сколько часов, минут и секунд?

и что для вас вообще "формат час:мин:сек" - это строка? или тип time? или что то другое?
26 апр 19, 10:59    [21872345]     Ответить | Цитировать Сообщить модератору
 Re: Преобразование int в time  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7407
plorkie,

этот вопрос не имеет отношения к SQL server.
26 апр 19, 12:15    [21872483]     Ответить | Цитировать Сообщить модератору
 Re: Преобразование int в time  [new]
dklim.kzn
Member

Откуда: Казань
Сообщений: 123
если нужно инсертить, то можно инсертить, смело и уверенно
26 апр 19, 12:54    [21872541]     Ответить | Цитировать Сообщить модератору
 Re: Преобразование int в time  [new]
AndrF
Member

Откуда:
Сообщений: 2183
DECLARE @T TABLE([transtime] int)

INSERT INTO @T([transtime])
VALUES(54777), (23544), (25921)

SELECT [transtime],
CAST(CAST([transtime] AS float) / 86400 AS datetime),
CONVERT( varchar, CAST(CAST([transtime] AS float) / 86400 AS datetime), 108)
FROM @T
26 апр 19, 13:06    [21872564]     Ответить | Цитировать Сообщить модератору
 Re: Преобразование int в time  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
plorkie
Lanselot,
Спасибо, а если это процедура и нам нужны данные заинсертить из одной таблицы в другую? То есть имеется структура таблицы, где есть поле transtime со значениями (15632, 43222.. и т.д) и нужно в другую таблицу вставить эти вэлью преобразов их в формат час:мин:сек 00:00:00
Вы скажите сразу, зарплату за вас в каком окошке можно пойти получить?
26 апр 19, 22:32    [21873087]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить