字符串分割成多行数据(oracle函数)

时间:2015-07-30 11:15:02   收藏:0   阅读:310

原文地址——http://blog.csdn.net/qq525099302/article/details/47146537

-- 创建分割类型(函数中要用到)
create or replace type strsplit_type as table of varchar2(4000) ;
-- 创建分割函数
create or replace function strsplit(p_value varchar2,
                                    p_split varchar2 := ‘,‘)
--usage: select * from table(strsplit(‘1,2,3,4,5‘))
 return strsplit_type
  pipelined is
  v_idx       integer;
  v_str       varchar2(500);
  v_strs_last varchar2(4000) := p_value;

begin
  loop
    v_idx := instr(v_strs_last, p_split);
    exit when v_idx = 0;
    v_str       := substr(v_strs_last, 1, v_idx - 1);
    v_strs_last := substr(v_strs_last, v_idx + 1);
    pipe row(v_str);
  end loop;
  pipe row(v_strs_last);
  return;

end strsplit;

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文:http://blog.csdn.net/qq525099302/article/details/47146537

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!