create type tab_str as table of varchar2(30);
/
create or replace function to_table(p_str varchar2,p_split varchar2) return tab_str
as
ltab tab_str := tab_str();
pos integer := 0;
ls varchar2(255) := p_str;
v_split varchar2(255):='';
begin
v_split :=p_split ;
pos := instr(ls,v_split);
while pos > 0 loop
ltab.extend;
ltab(ltab.count) := substr(ls,1,pos - 1);
ls := substr(ls,pos + 1);
pos := instr(ls,v_split);
end loop;
ltab.extend;
ltab(ltab.count) := ls;
return ltab;
end;
select * from table(cast(to_table('search,add,update,delete','d') as tab_str));
/
create or replace function to_table(p_str varchar2,p_split varchar2) return tab_str
as
ltab tab_str := tab_str();
pos integer := 0;
ls varchar2(255) := p_str;
v_split varchar2(255):='';
begin
v_split :=p_split ;
pos := instr(ls,v_split);
while pos > 0 loop
ltab.extend;
ltab(ltab.count) := substr(ls,1,pos - 1);
ls := substr(ls,pos + 1);
pos := instr(ls,v_split);
end loop;
ltab.extend;
ltab(ltab.count) := ls;
return ltab;
end;
select * from table(cast(to_table('search,add,update,delete','d') as tab_str));
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8113358/viewspace-709412/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8113358/viewspace-709412/