텍스트를 단어 별 쪼개는 방법? 0 4 1,475

by 미소애비 [2013.06.12 11:41:11]


안녕하세요~

PK    TEXT
11    가나다
22    아저씨
33     미소애비

이러한 데이터를

PK    TEXT_EACH
11    가
11    나
11    다
22    아
22    저
22    씨
33    미
33    소
33    애
33    비

이와 같이 형태소 한 개씩 잘라내어 테이블을 재 구성할 수 있을까요?
프로시저로는 할 수 있겠는데,
혹시 단순 쿼리로 가볍게 할 수 있는 방법이 있을지 궁금합니다~~

감사합니다.
by 우리집아찌 [2013.06.12 11:52:09]
 
-- 초허접 ..
WITH T1 (c1 , c2) AS ( 
SELECT '11',  '가나다'  FROM DUAL UNION ALL
SELECT '22',  '아저씨'  FROM DUAL UNION ALL
SELECT '33',  '미소애비' FROM DUAL 
), T2 AS ( SELECT LEVEL lv FROM DUAL CONNECT BY LEVEL <= 10 )


SELECT c1 , SUBSTR(c2, lv , 1 ) FROM T1 , T2
WHERE T2.lv <= LENGTH(c2)
ORDER BY c1 , lv

by 아발란체 [2013.06.12 11:57:28]

와 좋은데요.

길이 10 부분도 데이타셋에 따라 변하게 해주면 되겠네요.
SELECT LEVEL LV FROM DUAL CONNECT BY LEVEL <=
  (SELECT SUM(LENGTH(TEXT)) AS MAXROWNUM  FROM T1)


by 우리집아찌 [2013.06.12 11:59:31]
스~마트하게 다시 짜주세요~ 후다닥..

컬럼 사이즈로 잡아도 될거같아서요.. ^^*
아니면 대략 낭패~~

by 미소애비 [2013.06.12 14:03:51]
으악!!!
적어주신 소스를 이용하여 해결 되었습니다.
감사합니다~~~
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입