SQL:检查值为'日期'的列的格式但类型是'字符串'

时间:2017-09-19 14:42:31

标签: sql oracle etl

我正在运行因数据质量问题而失败的ETL作业。 在我的源代码中,我的日期列采用字符串格式,我使用TIMESTAMP方法将其转换为to_timestamp(),同时将其存储到目标中。

当一个日期值(字符串格式)变为2016-06-而不是2016-11-10 06:07:48.633时,此作业失败。由于值不正确,我无法将其转换为时间戳,而我的整个作业都失败了。

如何以通用方式应用格式检查,以便在将日期转换为时间戳之前验证日期(字符串数据类型)的格式是否正确?

1 个答案:

答案 0 :(得分:1)

您可以使用Isdate()函数来检查字符串是否为日期。

在过滤级别使用此功能并过滤无效日期并加载其余日期。