使用AT TIME ZONE有一种方法可以在没有00:00 AT的情况下获得我的UTC时间而不在我的查询中使用LEFT。
我这样做:
SELECT GETDATE() AT TIME ZONE 'EASTERN standard time' at time zone 'UTC'
Answer: 2018-03-05 15:08:00.930 +00:00
并尝试查看除了
之外是否有更好的方法SELECT LEFT(GETDATE() AT TIME ZONE 'EASTERN standard time' at time zone 'UTC',23)
答案 0 :(得分:1)
以下代码将输出您想要的结果:
CONVERT(VARCHAR, CONVERT(DATETIME, <DateField> AT TIME ZONE 'Eastern Standard Time' AT TIME ZONE 'UTC'), 100) AS [LocalDateTime]
如果您的EST日期为'2018-03-22 22:48:24.893',则输出的UTC日期将为'201年3月22日上午2:48'。
答案 1 :(得分:0)
我想说它是变量并从datetimeoffset
获取日期时间信息
转换为datetime
将起到作用
DECLARE @MyUtctime DATETIMEOFFSET
SET @MyUtctime = (
SELECT getdate() AT TIME ZONE 'EASTERN standard time' at TIME zone 'UTC'
)
SELECT CONVERT(DATETIME, @MyUtctime, 1)
SELECT getdate()