我将一个表中的 DateTime
字段转换为 DateTimeOffset
,但现在偏移量自动设置为 +00:00
。
我需要将这个表的所有 DateTimeOffset
字段更改为 +1:00 的偏移量。
我该如何在更新查询中实现这个目标?
我将一个表中的 DateTime
字段转换为 DateTimeOffset
,但现在偏移量自动设置为 +00:00
。
我需要将这个表的所有 DateTimeOffset
字段更改为 +1:00 的偏移量。
我该如何在更新查询中实现这个目标?
您可以使用SWITCHOFFSET
更改偏移量。如果您不想更改日期,那么您需要从该日期中减去相应的小时数。
SELECT SWITCHOFFSET(DATEADD(hh, -1, CAST (GETDATE() AS DATETIMEOFFSET)),
'+01:00')
您可以使用TODATETIMEOFFSET(datetime,'+01:00')函数。这不会影响日期时间部分。
DECLARE @t DATETIMEOFFSET
SELECT @t = Getdate()
SELECT Replace(@t, RIGHT(@t, 6), '+01:00')
<update tablename set offsetfield = Replace(offsetfield, RIGHT(offsetfield, 6), '+01:00')>