테이블에 select insert 처리하려고 합니다.
sample은 아래와 같이 인터페이스로 넘어오는데 구분자가 :으로 되어있구요
기존에 plsql 에서는 instr으로 변수에 넣어서 insert 하는 형태인데
쿼리 한방에 넣어볼까 합니다. 15개 컬럼으로 : 제외하고 파싱되어 insert되는 형태인데요... 잘 안되네요...
insert ...
SELECT '0:1:2:1:2:3:2:3:4:3:4:5:4:5:6' v
FROM dual
connect by 로 하면 열 하나에 행 15개로 나오고 이걸 다시 pivot을 해야하나 하니...
원래 형태가 다시되는데... 흠... 뭘한거지 싶구요...
컬럼별 하나하나 한줄로 instr으로 하는것이 아니라 하나로 각 컬럼으로 insert 하려는 거애요...
하나하나 하는거면 기존에 변수로 처리하는것과 다를게 없거든요...
SELECT REGEXP_SUBSTR(V,'[^:]+' , 1 , 1 ) V1 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 2 ) V2 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 3 ) V3 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 4 ) V4 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 5 ) V5 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 6 ) V6 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 7 ) V7 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 8 ) V8 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 9 ) V9 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 10 ) V10 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 11 ) V11 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 12 ) V12 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 13 ) V13 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 14 ) V14 ,REGEXP_SUBSTR(V,'[^:]+' , 1 , 15 ) V15 FROM ( SELECT '0:1:2:1:2:3:2:3:4:3:4:5:4:5:6' v FROM DUAL )