将更新字段转换为时间

时间:2014-12-03 14:33:41

标签: sql sql-server

我有2个字段名称FROM和TO。两个字段都有时间秒(例如FROM = 20520和TO = 39360)。我想将这些字段转换并更新为时间格式(例如FROM = 20520变为FROM = 05:420:00:00,TO = 39360变为TO = 10:56:00:00) 谢谢。

1 个答案:

答案 0 :(得分:0)

以下是将整数转换为时间的方法,您可以解决此问题以更新您的值。 @T是你当前的值。

declare @T int
set @T = 205020

select dateadd(hour, (@T / 1000000) % 100,
   dateadd(minute, (@T / 10000) % 100,
   dateadd(second, (@T / 100) % 100,
   dateadd(millisecond, (@T % 100) * 10, cast('00:00:00' as time(2))))))

修改

你只需要秒部分。

 declare @T int
 set @T = 205020


 select dateadd(second, (@T / 100) % 100,cast('00:00:00' as time(2)))

第二次批量修改

update Yourtable
set FromTime = dateadd(second, ([FROM] / 100) % 100,cast('00:00:00' as time(2))),
ToTime = dateadd(second, ([TO] / 100) % 100,cast('00:00:00' as time(2)))
where {YourFilter for you 10000 records}