我的数据库中有一堆日期时间条目,现在必须将其迁移到UTC。
我已经尝试过类似的方法来验证时差:
SELECT CONVERT(datetime,SWITCHOFFSET(CONVERT(datetimeoffset,GetUTCDate()),'+02:00')) Time_In_Sweden
本地(+ 2h)转换为UTC(+0)=>,即我必须删除2h。
但是我不确定执行此查询时将如何处理。有更好的方法吗?
datetime列的类型为datetime2(7)
,称为DateCreated
我已经尝试过了,但是没有用,我不确定该怎么做。
DECLARE @Time_In_Sweden datetime2, @UTCTimeNow datetime2
SET @Time_In_Sweden = DateCreated -- ????????
SET @UTCTimeNow = GETUTCDATE()
UPDATE MachineStops SET DateCreated = CONVERT(DATEDIFF(d,DateCreated,@UTCTimeNow)
MachineStops是表格
谢谢。
答案 0 :(得分:1)
好吧,因为您知道时差是2个小时,所以最简单的方法就是放2个小时的假:
Update MachineStops SET DateCreated = DateADD(hour, -2, DateCreated )