PL/SQL实现字符串转成数组
这个功能在JAVA中比较简单,String有提供一个split的方法实现此功能。在PL/SQL其实也不难,用substr与instr联合使用就可以实现。
function varchar2_to_array(ls varchar2) return list_table is
Type list_table is table of varchar2(200);
tl list_table := list_table(NULL);
i integer :=0;
j integer :=0;
v_ls varchar2(1000);
begin i := instr(ls,',');
if i=0 then tl(1) := ls; goto ex; else v_ls :=ls;
end if;
while i>0 loop tl(j) := substr(v_ls,1,i-1); v_ls := substr(v_ls,i+1,length(v_ls));
i := instr(v_ls,',');
tl.extend; if i=0 then j := j+1;
tl(j) := v_ls; goto ex;
end if;
end loop;
<> return tl;end varchar2_to_array;