有没有办法只获得" -04"或基于在查询中添加的时区的差异值?
select convert(datetime,GETDATE()) at time zone 'Eastern Standard Time'
Result: 2017-09-12 17:49:18.377 -04:00
答案 0 :(得分:1)
如果您使用的是sql server,则可以根据您想要的数据执行以下两种方式之一
datepart(tz,SYSDATETIMEOFFSET())
或datename(tz,SYSDATETIMEOFFSET())
。
如果您查看这些功能,您会发现它们需要偏移。 GETDATE()
未返回正确的类型。
你必须使用SYSDATETIMEOFFSET()
代替。
有关详情,请参阅this