oracle自定义splitstr

目录

oracle自定义splitstr

有时候我们需要将(‘a,b,c,d’)字符分割开,这个时候就需要oracle自定义一个splitstr函数,操作起来非常简单,执行下面的function就可以了。

create or replace function splitstr(p_string    in varchar2,
                                    p_delimiter in varchar2)
  return str_split
  pipelined as
  v_length number := length(p_string);
  v_start  number := 1;
  v_index  number;
begin
  while (v_start <= v_length) loop
    v_index := instr(p_string, p_delimiter, v_start);
  
    if v_index = 0 then
      pipe row(substr(p_string, v_start));
      v_start := v_length + 1;
    else
      pipe row(substr(p_string, v_start, v_index - v_start));
      v_start := v_index + 1;
    end if;
  end loop;

  return;
end splitstr;
(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐