一尘不染

SQL Server 2008根据计算机设置获取DATETIMEOFFSET

sql

在SQL Server 2008 R2上,我具有以下T-SQL代码:

SELECT CAST(GETDATE() AS DATETIMEOFFSET);

这给了我如下结果:

2011-12-26 10:21:13.7970000 +00:00

但是结果就是我想要成为的。应该是这样的:

2011-12-26 10:21:13.7970000 +02:00

当我插入一个值时,也会发生同样的事情:

DECLARE @foo AS TABLE(
    fooDate DATETIMEOFFSET
);

INSERT @foo VALUES(GETDATE());

SELECT * FROM @foo;

这会给我同样的错误结果(至少对我的需求是错误的)。

我在这里想念什么?


阅读 118

收藏
2021-05-16

共1个答案

一尘不染

试试这个

SELECT SYSDATETIMEOFFSET();

GETDATE() 函数没有任何时区信息

2021-05-16