将字符串日期时间转换为 GMT 中的字符串日期时间

问题描述 投票:0回答:1

我在

2023-03-03T02:44:54Z
时区有以下日期时间
Asia/Hong_Kong
。我需要将其转换为 GMT 日期时间。我试过先把这个时间转换成日期时间

CONVERT(DATETIME, '2023-03-03T02:44:54Z', 120)

但这会产生以下错误

消息 241,级别 16,状态 1,第 19 行 从字符串转换日期和/或时间时转换失败。

sql sql-server datetime
1个回答
2
投票

首先你需要将你的字符串转换为

DATETIME
,你可以使用
CAST
TRY_CAST
将你的字符串日期时间转换为
DATETIME
.

然后您可以指定原始源时区和目标时区。

以下是将 UTC 转换为 GMT 时区的示例查询。

SELECT CAST( '2023-03-03T02:44:54Z' AS DATETIME) AT TIME ZONE 'UTC' AT TIME ZONE 'GMT Standard Time' AS  GMT
© www.soinside.com 2019 - 2024. All rights reserved.