將用逗號分隔的字串欄位轉為對應的多行資料
今天處理的是個故障表資訊.內容如下:
故障工單號 影響小區
ID-1 A小區,B小區,東小區
因為要與小區表匹配,故想將影響小區拆開,拆開後內容如下:
ID-1 A小區
ID-1 B小區
ID-1 東小區
然後一番搗鼓之後,初步的實現了效果.
select REGEXP_SUBSTR(a.AffectedCellName, '[^,]+', 1, l) VILLAGENAME,a.*
from (select AffectedCellName, netname, inc_ne_name, basesn,BASESTATUS
FROM WF_BMCC_EOMS_ITDEALFAULT TT
WHERE 1 = 1
) a,
(SELECT LEVEL l FROM DUAL CONNECT BY LEVEL <= 100) b
WHERE l <= LENGTH(a.AffectedCellName) -LENGTH(REPLACE(AffectedCellName, ',')) + 1
ps :100是寫死了的,這裡不知道該怎麼弄