1.检查数据转换无误的情况下,可能是oracel本身查询问题。
2. to_number()内的字段是个字符型,我知道这个应该尽量避免的。
现字段中保存的数据有数字也有字符,业务逻辑上,过滤出来的记录中to_number的字段都是数字,但还是会报无效数字的错误
oracle 以数据块为单位扫描数据,我猜想虽然过滤出来的记录to_number的字段都是数字,但对应的数据块中还是
存在字段为字符的情况。
3.用 /*+ materialize */ 或者rownum先把你查询的结果固化为一个集合。
然后再用另外一层执行to_number。