在 Synapse 中将时间戳从字符串转换为 EST 时间
Convert timestamp from string to EST time in Synapse
我是 Synapse 数据仓库的新手。
目前,我有一个名为 last_update_utc 的时间戳列作为字符串数据类型,它是 UTC 时间。我需要添加一个新列 last_update_est,时间戳为 datetime2 数据类型 从 last_update_utc 列转换 - 转换还需要考虑 DST。您可以查看下面的示例输出:
id | last_update_utc (string) | last_update_est (datetime2)
1 | 2020-02-28T17:26:47.483698Z | 2020-02-28T12:26:47.483698Z
2 | 2021-09-03T22:59:19.093Z | 2021-09-03T18:59:19.093Z
第一行,无夏令时相差5小时,有夏令时相差4小时。 table 名称是 hub.test
,最初有 id 和 last_update_utc 列。
在Synapse DW中是否有简单的功能或方法来实现上述任务?
谢谢
将字符串转换为 datetime2 并应用 AT TIME ZONE 将 UTC 转换为所需时区。
SELECT CONVERT(DATETIME2, '2021-09-03T22:59:19.093Z') AT TIME ZONE 'UTC' AT TIME ZONE 'Eastern Standard Time'as last_update_est
请参阅 this document 以了解有关 AT TIME ZONE 实施的更多信息。
我是 Synapse 数据仓库的新手。
目前,我有一个名为 last_update_utc 的时间戳列作为字符串数据类型,它是 UTC 时间。我需要添加一个新列 last_update_est,时间戳为 datetime2 数据类型 从 last_update_utc 列转换 - 转换还需要考虑 DST。您可以查看下面的示例输出:
id | last_update_utc (string) | last_update_est (datetime2)
1 | 2020-02-28T17:26:47.483698Z | 2020-02-28T12:26:47.483698Z
2 | 2021-09-03T22:59:19.093Z | 2021-09-03T18:59:19.093Z
第一行,无夏令时相差5小时,有夏令时相差4小时。 table 名称是 hub.test
,最初有 id 和 last_update_utc 列。
在Synapse DW中是否有简单的功能或方法来实现上述任务?
谢谢
将字符串转换为 datetime2 并应用 AT TIME ZONE 将 UTC 转换为所需时区。
SELECT CONVERT(DATETIME2, '2021-09-03T22:59:19.093Z') AT TIME ZONE 'UTC' AT TIME ZONE 'Eastern Standard Time'as last_update_est
请参阅 this document 以了解有关 AT TIME ZONE 实施的更多信息。