구분자로 쪼개고 싶습니다 0 3 763

by 정우성 [Oracle 기초] 구분자 [2019.05.02 14:49:59]


예를들어. A/w/b

이렇게되어 있으면 /로 쪼갤때의 갯수 3과

이걸다 각각 따로 보여주고 싶습니다

 

Split함수나 regexp 함수 없이 생 sql로 될까요?

by 우리집아찌 [2019.05.03 09:09:34]

instr 함수 쓰시면 됩니다


by 우리집아찌 [2019.05.03 09:12:45]

by 마농 [2019.05.03 12:04:24]
WITH t AS
(
SELECT 'A/w/b' v FROM dual
)
SELECT v
     , LENGTH(v) - LENGTH(REPLACE(v, '/')) + 1 cnt
     , lv
     , SUBSTR( v
             , INSTR('/'||v, '/', 1, lv)
             , INSTR(v||'/', '/', 1, lv)
             - INSTR('/'||v, '/', 1, lv)
             ) x
  FROM t
     , (SELECT LEVEL lv FROM dual CONNECT BY LEVEL <= 9)
 WHERE lv <= LENGTH(v) - LENGTH(REPLACE(v, '/')) + 1
;

 

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