我尝试在SQL Developer中运行select
语句,该语句将20160809
之类的字段转换为date
。我的查询如下所示:
select
to_date(sale_date, 'YYYYMMDD') as sale_date
from properties
这是一个ORA-01839: date not valid for month specified
。我尝试了从子串到正则表达式的所有方法来推断哪个值导致了错误,但是没有任何结果。有没有什么方法可以执行这个查询并获得导致它失败的to_date
的输入?
3条答案
按热度按时间mznpcxlj1#
创建表:
如果您的表不是太大,您可以尝试以下操作:
输出:
8hhllhi22#
我想你可能需要一个蛮力的方法:
这不是100%完美。它留下了闰年错误的可能性。您可以使用以下方法手动调查这些错误:
klh5stk13#
您是否在使用Oracle 12c?如果是,那么
如果您使用的不是Oracle 12c,则可以将
safe_to_date
放入一个包中,例如“my_pkg”,然后执行以下操作: