Oracle数据库时间戳(6)转换为雪花timestamp_ntz时抛出错误

Posted

技术标签:

【中文标题】Oracle数据库时间戳(6)转换为雪花timestamp_ntz时抛出错误【英文标题】:Oracle database timestamp(6) when converting to snowflake timestamp_ntz throws error 【发布时间】:2021-05-20 16:06:33 【问题描述】:

我在源系统中有一个数据,如下所示

“02-FEB-10 05.25.21.367709000 AM”

但是当我尝试使用 timestamp_ntz 将数据转换为雪花时,它会抛出

“无法转换变体错误。”

根据文档和兼容性,它表明时间戳可以完成这项工作,但事实并非如此。 https://docs.snowflake.com/en/sql-reference/data-types-datetime.html

让我知道解决此问题的方法。

【问题讨论】:

【参考方案1】:

这只是一个格式解析问题。这是一个有效的解析字符串:

select try_to_timestamp_ntz('02-FEB-10 05.25.21.367709000 AM', 'DD-MON-YY HH.MI.SS.FF AM');

【讨论】:

在我的情况下,目标数据类型是 timestamp_ntz,我可以知道为什么它没有转换,没有明确地通过函数!

以上是关于Oracle数据库时间戳(6)转换为雪花timestamp_ntz时抛出错误的主要内容,如果未能解决你的问题,请参考以下文章

如何在雪花中将时间戳转换为日期

oracle时间戳6转换为sql server datetime2错误

如何将长口头日期时间转换为雪花中的时间戳(YYYY-MM-DD HH:MM:SS)?

oracle日期转换问题

MySQL中日期和时间戳互相转换的函数和方法

将MYSQL数据库里的时间戳转换成时间