create or replace function SPLITER(p_value varchar2 ,
p_split varchar2 := ',' ,times integer := 1)
--參數1 表示字符串,參數2 爲分隔符,參數3 爲第幾個
return varchar2 as
v_idx1 integer;
v_idx2 integer;
v_strs_last varchar2(4000 ) := p_value;
begin
if times= 1 then
return substr(v_strs_last,1 ,instr(v_strs_last,p_split,1, 1)-1 );
end if;
v_idx1 := instr(v_strs_last, p_split, 1,times-1 );
v_idx2 := instr(v_strs_last, p_split, 1,times);
if v_idx2= 0 then
return substr(v_strs_last,v_idx1+1 );
end if;
return substr(v_strs_last,v_idx1+ 1,v_idx2-v_idx1-1 );
end SPLITER;
PLSQL的截取函數
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.