분류 | 게시판 |
베스트 |
|
유머 |
|
이야기 |
|
이슈 |
|
생활 |
|
취미 |
|
학술 |
|
방송연예 |
|
방송프로그램 |
|
디지털 |
|
스포츠 |
|
야구팀 |
|
게임1 |
|
게임2 |
|
기타 |
|
운영 |
|
임시게시판 |
|
예를들어
001023304 라는 문자와
321000000 라는 문자가 있을 때
001023304는 1-2-33-4 가 되도록
321000000은 321 이 되도록 하려고 할 때
어떻게 해야할까요....
select REPLACE(DECODE(SUBSTR('001023304 ', 1, 2), '00', SUBSTR('001023304 ', 3, 1), SUBSTR('001023304 ', 1, 3)) || '-' ||
DECODE(SUBSTR('001023304 ', 4, 2), '00', '', DECODE(SUBSTR('001023304 ', 4, 1), '0', SUBSTR('001023304 ', 5, 1))) || '-' ||
DECODE(SUBSTR('001023304 ', 6, 2), '00', '', SUBSTR('001023304 ', 6, 2), DECODE(SUBSTR('001023304 ', 6, 1), '0', SUBSTR('001023304 ', 7, 1))) || '-' ||
DECODE(SUBSTR('001023304 ', 8, 2), '00', '', DECODE(SUBSTR('001023304 ', 8, 1), '0', SUBSTR('001023304 ', 9, 1))), '---', '') a
from dual
이렇게 해봤는데
1-2--4 가 되어버리네요....
0이 아닌 숫자가 2개 연속 들어가도 저렇게 중간이 비어버려요....ㄷㄷ
죄송합니다. 댓글 작성은 회원만 가능합니다.