• 1阅读
  • 0回复

oracle分割字符串,并提取指定位置

在线 大火腿
级别: 总版主
楼主   发表于: 2021-11-07 , 来自: From:中国
1. 创建自定义函数 : 名字叫做  Get_StrArrayStrOfIndex  传入3个参数,具体见下面定义
--函数开始

create or replace function Get_StrArrayStrOfIndex
(
  av_str varchar2,  --要分割的字符串
  av_split varchar2,  --分隔符号
  av_index number --取第几个元素
)
return varchar2
is
  lv_str varchar2(1024);
  lv_strOfIndex varchar2(1024);
  lv_length number;
begin
  lv_str:=ltrim(rtrim(av_str));
  lv_str:=concat(lv_str,av_split);
  lv_length:=av_index;
  if lv_length=0 then
      lv_strOfIndex:=substr(lv_str,1,instr(lv_str,av_split)-length(av_split));
  else
      lv_length:=av_index+1;
     lv_strOfIndex:=substr(lv_str,instr(lv_str,av_split,1,av_index)+length(av_split),instr(lv_str,av_split,1,lv_length)-instr(lv_str,av_split,1,av_index)-length(av_split));
  end if;
  return  lv_strOfIndex;
end Get_StrArrayStrOfIndex;
---函数结束

调用示例
select Get_StrArrayStrOfIndex('12/2222', '/',0) from dual
返回12,可见,从0开始
发帖 回复
« 返回列表
描述
快速回复
批量上传需要先选择文件,再选择上传