在 Athena 中,我在資料庫中存盤了時區和日期時間,我想使用存盤的時區來轉換日期時間
我可以讓這個查詢作業
SELECT (my_date_time) AT TIME ZONE 'America/Los_Angeles' AS converted_time
FROM table_one;
如何用表中欄位的值替換硬編碼時區,例如
SELECT (my_date_time) AT TIME ZONE my_timezone AS converted_time
FROM table_one;
當我嘗試第二個查詢時出現此錯誤
第 8:41 行:不匹配的輸入“my_timezone”。期待:'區域'
編輯:添加到 Guru Strons 的答案中,這就是我使用 at_timezone 的方式
WITH dataset (t, tz) AS (
SELECT
table_one.my_date_time,
table_two.timezone
FROM table_one
LEFT JOIN table_two ON table_one.id = table_two.table_one_id
)
SELECT t, tz, at_timezone(t, tz) FROM dataset
uj5u.com熱心網友回復:
Ahtena 支持的at_timezone功能:
WITH dataset (t, tz) AS (
VALUES (TIMESTAMP '2001-08-22 03:04:05.321 America/Los_Angeles', 'America/New_York')
)
select at_timezone(t, tz)
FROM dataset
輸出:
| _col0 |
|---|
| 2001-08-22 06:04:05.321 美國/紐約 |
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/329550.html
