쿼리 문의 드립니다. 0 4 1,765

by 띠엉이 [SQL Query] 쿼리 [2014.05.13 14:04:38]


AAA_BBB_CCC_DDD    를 

AAA
BBB
CCC
DDD 

로 표현하려면 어떻게 해야 될까요 ㅠㅠ 

한컬럼의 데이터를 

세로행으로 나타내는 방법을 문의드립니다. 

 

 

 

 

by 마농 [2014.05.13 15:32:35]

by 샤프하나 [2014.05.14 14:57:09]

스트링으로 조건절을 구분자로 해서 넘어올때 제가 자주 쓰는 쿼리인데 방법은 많은데
이게 젤 짧게 해결할 수 있는 방법인거 같습니다.

SELECT REGEXP_SUBSTR(:pString,'[^_]+',1,LEVEL)
FROM DUAL
CONNECT BY REGEXP_SUBSTR(:pString,'[^_]+',1,LEVEL) IS NOT NULL


by 마농 [2014.05.14 15:11:14]

좀더 간결하게...
 - 변경전 : CONNECT BY REGEXP_SUBSTR(:pString,'[^_]+',1,LEVEL) IS NOT NULL
 - 변경후 : CONNECT BY LEVEL <= REGEXP_COUNT(:pString, '_') + 1


by 샤프하나 [2014.05.14 15:27:19]

당황하지 않고 정규식을 이용하여 가장 짧게 해결할 수 있는 방법으로
'CONNECT BY REGEXP_SUBSTR(:pString,'[^_]+',1,LEVEL) IS NOT NULL'
끝....
했는데

막고 빡!!! 하는 느낌이 드네요. ㅋㅋ

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입