0

我正在移动当前存储为int to DateTimeOffset.

这里的示例是起始值 1341190841,当我使用此查询时:

dateadd  (s,Call.StartTime, '1970-01-01') AS StartTimeDate

它返回2012-07-02 01:00:41.000正确的值。但是,我使用 SSIS 将数据从一个数据库移动到另一个数据库,当数据在新表中时,StartTimeDate现在看起来像这样2012-07-02 01:00:41.0000000 +01:00

有人知道如何删除 +01:00 吗?我想保持第一个查询中的时间。

4

1 回答 1

3

我无法重现该行为(即使有两个不同时区的 SQL Server),所以这可能不是您想要的,但您可以在复制后“修复”TZ 偏移量(“+01:00”)通过使用如下函数更新StartTimeDate列来获取数据ToDateTimeOffset

UPDATE the_table SET StartTimeDate = TODATETIMEOFFSET(StartTimeDate, 0)

这将使日期和时间保持不变,同时将偏移量调整为指定的(0因为您希望它将 TZ 从 +1“调整”到 0)。

于 2013-03-31T13:35:25.403 回答