在雪花中将 GMT 转换为 IST

Convert GMT to IST in snowflake

我正在尝试将 GMT 转换为雪花中的 IST。我转换了,但是当我尝试将 DateTime 更改为日期时,它不起作用。

SELECT '2020-02-29 23:59:57' 作为日期, convert_timezone('UTC', '2020-02-29 23:59:57') IST_datetime, cast(convert_timezone('UTC', '2020-02-29 23:59:57') AS date) IST_date

 DATE                  IST_DATETIME         IST_DATE

2020-02-29 23:59:57 2020-03-01 05:29:57 2020-02-29

Problem is highlighted in red rectangle

使用日期时间代替日期:

SELECT '2020-02-29 23:59:57' AS Date, 
convert_timezone('GMT','Asia/Kolkata', '2020-02-29 23:59:57') IST_datetime,
cast(convert_timezone('GMT','Asia/Kolkata', '2020-02-29 23:59:57') AS datetime) IST_date;

顺便说一句,我还添加了源时区和目标时区 (GMT/Kolkata) 以进行可靠的转换(这将不取决于您的会话时区)。