拆分字串,這可以做少量資料的拆分,但是大量資料效能極差。

網路上是很多案例,但常常少一個加號或少甚麼符號,執行是有錯誤的。

所以這邊自己筆記一下。

 

案例為

要拆分的字串為 AAA;BBB;CCC,並且要以分號作拆分

若是要以別的符號做拆分,只需要調整[^;]+裡面的分號部分

最後面的+1是用來取你分格符號後第一位開始,可以玩玩看不加,或是別的數字看結果~~

 

 

select rownum , REGEXP_SUBSTR ( 'AAA;BBB;CCC', '[^;]+', 1,LEVEL) AS TEXT
from dual
connect by LEVEL <= LENGTH('AAA;BBB;CCC') - LENGTH (regexp_replace('AAA;BBB;CCC', ';', ''))+1;

 

image

 

 

若說明有錯,也希望可以告訴我,讓我更正我的資訊,謝謝。

 

arrow
arrow

    我的暱稱 發表在 痞客邦 留言(0) 人氣()