【发布时间】:2016-02-28 00:09:08
【问题描述】:
我将表的DateTime 字段转换为DateTimeOffset,但现在偏移量自动设置为+00:00。
我需要将此表的 all DateTimeOffset 字段更改为 +1:00 的偏移量。
如何在更新查询中执行此操作?
【问题讨论】:
标签: sql sql-server datetimeoffset
我将表的DateTime 字段转换为DateTimeOffset,但现在偏移量自动设置为+00:00。
我需要将此表的 all DateTimeOffset 字段更改为 +1:00 的偏移量。
如何在更新查询中执行此操作?
【问题讨论】:
标签: sql sql-server datetimeoffset
您可以使用SWITCHOFFSET 更改偏移量。如果您不想更改日期,则需要从日期中减去小时数。
SELECT SWITCHOFFSET(DATEADD(hh, -1, CAST (GETDATE() AS DATETIMEOFFSET)),
'+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')>
【讨论】:
您可以使用 TODATETIMEOFFSET(datetime, '+01:00' ) 这不会影响日期时间部分。
【讨论】: