情况是这样的,有一个cust表,表有个字段名为fax,字段中有很多数据,
fax
FAX-87053000
FAX-85250208
FAX-7083488
7074837(F)
FAX-8810004
FAX-5170062
88060687FAX
85304470(张
88060687FAX
等数据,现要求取只取数字的结果,即查询结果为:
87053000
85250208
7083488
8810004
5170062
88060687
85304470
88060687
我个人想法就是逐位取,ascii码判断判断是否在0到9的,有了就就取,没有就删除。这只是个思路,请各位朋友最好能够写出详细的存储过程,要是能用select语句实现就更好啦!
fax
FAX-87053000
FAX-85250208
FAX-7083488
7074837(F)
FAX-8810004
FAX-5170062
88060687FAX
85304470(张
88060687FAX
等数据,现要求取只取数字的结果,即查询结果为:
87053000
85250208
7083488
8810004
5170062
88060687
85304470
88060687
我个人想法就是逐位取,ascii码判断判断是否在0到9的,有了就就取,没有就删除。这只是个思路,请各位朋友最好能够写出详细的存储过程,要是能用select语句实现就更好啦!
(a varchar2(100))insert into aaaa values('aaa-s1111(中国));declare
aa varchar2(100);
bb varchar2(100);
cc varchar2(100);
dd varchar2(100);
i number(10);
begin
select a into aa from aaaa;
for i in 0..length(aa) loop
bb:=substr(aa,i,1);
dbms_output.put_line(bb);
if(ascii(bb)>=48 and ascii(bb)<=57)then
dd:=bb||dd; end if;
end loop;
dbms_output.put_line(dd);
end;