日期:2014-05-17  浏览次数:20873 次

Oracle中如何分隔字符串?
就如JAVA中的split()方法一样,一个字符串以","间隔作为参数传入存储过程。
要在存储过程中进行分割,然后在操作。

谢谢谁能告诉我呀?

------解决方案--------------------
instr + substr

------解决方案--------------------
declare
str varchar2(100);
startposition number(10);
len number(10);
output varchar2(100);
begin
str:='hello,nick,xingxing';
startposition:=1;
loop
select instr(str,',',startposition ) into len from dual;
dbms_output.put_line(startposition);
dbms_output.put_line(len);

if len!=0 then 
select substr(str,startposition,len-startposition) into output from dual;
else
select substr(str,startposition) into output from dual;
dbms_output.put_line(output);
exit;
end if;

dbms_output.put_line(output);
startposition:=len+1;
dbms_output.put_line('-------------------------------------');
end loop;

end;
------解决方案--------------------
下午就写的这个
一个字 烦
------解决方案--------------------
详见http://blog.csdn.net/heyixiang/archive/2005/11/12/527973.aspx