拆分字符串函数:

--拆分字符串函数:
--定义字符串类型的table
create or replace type type_return_str is table of varchar2(4000);
--创建拆分字符串函数
create or replace function orcl_split_str(p_string varchar2, --待拆分字符串
                                          p_fh     varchar2  --拆分符号
                                          ) return type_return_str
  pipelined as
  v_length     number := length(p_string);
  v_del_length number := length(p_fh);
  v_start      number := 1;
  v_index      number;
begin
  while (v_start <= v_length) loop
    v_index := instr(p_string, p_fh, v_start);
    if v_index = 0 then
      pipe row(substr(p_string, v_start));
      v_start := v_length + v_del_length;
    else
      pipe row(substr(p_string, v_start, v_index - v_start));
      v_start := v_index + v_del_length;
    end if;
  end loop;
  return;
end orcl_split_str;
/
--使用函数
select column_value from table(orcl_split_str('sd,weg,kjyu,gfhd', ','));

--使用场景:
select * from table t where t.col in(select column_value from table(orcl_split_str('sd,weg,kjyu,gfhd', ',')));
--统计条数
select a.*,count(a.caml_cli_num) over() as 统计条数 from table a where a.xx = 'xxxxxx';

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值