如何在不更改Snowflake中的值的情况下将varchar转换为时间?

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

我需要将存储为 varchar 的时间值转换为“时间”数据值。但当我进行转换时,它比我的原始值增加了 19 个小时。我需要结果相同的值,但转换为时间。

SELECT '00:51:09' AS ORIGINAL_TIME_VARCHAR,
TO_TIME('00:51:09') AS CONVERT_TO_TIME;

时间转换的结果看起来:19:51:09

time type-conversion snowflake-cloud-data-platform
1个回答
0
投票

这是由于时区的原因。使用时间数据转换时区并不是一个简单的过程。

如果您想要快速解决方案,可以使用此方法:

SELECT '00:51:09' AS ORIGINAL_TIME_VARCHAR,
TO_TIME('00:51:09') - INTERVAL '19 HOURS' AS CONVERT_TO_TIME;
© www.soinside.com 2019 - 2024. All rights reserved.