SQL查询SQL Server将EST日期时间转换为UTC日期时间

问题描述

我一直在尝试从sql Server Management Studio将EST DateTime字段转换为UTC DateTime格式

发现UTC到EST的转换:

select CreateDate CreateDate_UTC,CONVERT(datetime,SWITCHOFFSET(CreateDate,DATEPART(TZOFFSET,CreateDate AT TIME ZONE 'Eastern Standard Time'))) as CreateDate_EST
from [TABLE]

对EST到UTC的查询可能是什么?并且也应采用以下格式。 2020-08-10T18:39:35.000Z

有人可以帮忙吗? 尝试使用“ UTC”更新时区,但未转换。

解决方法

您可以使用以下查询

select  replace(convert(nvarchar,GETDATE(),120),' ','T') + 'Z'

要以毫秒为单位的结果,可以使用121而不是120

select  replace(convert(nvarchar,121),'T') + 'Z'