Oracle 报无效数字,问避免方法
由于数据库开始的设计问题,把一列代表数字的列变成了varchar2...里面有可能存在字符类型,然后我用
Select x/100 form table1 时报无效数字的错误,请问如果避免??
我的意思是,如果x本来就可以强制转换成数字的就正常计算,如果不能,就默认为结果是0....类似nvl
------解决方案--------------------
自己写一个函数吧。呵呵
如:
create or replace function isNumber(p in varchar2)
return number
is
test number;
begin
test := to_number(p);
return test
exception
when VALUE_ERROR then return 0;
end;