oracle split 字元分割函式

2021-09-02 04:44:17 字數 1111 閱讀 8719

oracle本身沒有字元分割函式,乙個字串分割後,要以乙個結果集的方式存放,所以需要配合table一起用,分割後的字串是乙個陣列,在oracle中,可以先按如下,建立乙個型別,該型別就是split裡要返回的型別,如下:

create or replace type strsplit_type as table of varchar2(500);

建立好型別了,下面是split函式的實現,引用到上面的型別.

create or replace function str_split(p_value varchar2,

p_split varchar2 := ',')

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 str_split;

查詢測試一下:

select distinct a.* from table(str_split('province_dcg,province_sa,province_an,province')) a
.

返回結果:

1 province_dcg

2 province_sa

3 province_an

4 province

搞定

Oracle split函式拆分

sql 建立需要劃分的字串 with t1 as select one,two,three,four,five,six,seven,eight,nine,zero as source string from dual 統計字串中子串的個數,用 來劃分子串 t2 as select regexp co...

halcon粘連字元分割 粘連字元分割初探

學習驗證碼快乙個星期了,終於把樣本集切出來了,現在問題是如何切粘連字元,現在將自己的學習過程記錄下來 第一部分 我們知道,對於不黏連的字元,直接用掃瞄線分割法就可以,就是看哪乙個豎條上沒有文字畫素,則這個豎條就是兩個字元間的空白部分 當然,對於不黏連的字元,cfs演算法效果也很好,它主要是利用連通域...

字元分割函式

1.function split split str string line str string tstrings 2.字串分割 分割用字元 原始字串,3.var 4.posi integer 5.str tstringlist 6.l str string 7.begin 8.str tstri...