在 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;
这给我带来了同样的错误结果(至少不符合我的需求)。
我在这里缺少什么?
最佳答案
试试这个
SELECT SYSDATETIMEOFFSET();
GETDATE()
函数没有任何时区信息
关于SQL Server 2008根据机器设置获取DATETIMEOFFSET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8634104/