substr?... 0 3 555

by 킨지 [SQL Query] [2019.09.16 20:51:35]


108745100054 -> 87451054

109951110073 -> 99511173

108795220012 -> 87952212

이렇게 하고싶습니다.(지울대상은 크게표기하였습니다..)

 substr해서 앞에 10은 금방 지우는데

도저히 저 중간에 00을 지울방법이 ... 

 

by 필상 [2019.09.17 09:04:05]

SELECT SUBSTR('109951110073', 3, 6) || SUBSTR('109951110073', 11, 2)
  FROM DUAL


by 마농 [2019.09.17 09:09:07]
WITH t AS
(
SELECT '108745100054' v FROM dual
UNION ALL SELECT '109951110073' FROM dual
UNION ALL SELECT '108795220012' FROM dual
)
SELECT v
     , SUBSTR(v, 3, 6) || SUBSTR(v, 11, 2) x1
     , SUBSTR(v, 3, 6) || SUBSTR(v, 11) x2
     , SUBSTR(v, 3, 6) || SUBSTR(v, -2) x3
     , REGEXP_REPLACE(v, '..(......)..(..)', '\1\2') x4
     , REGEXP_REPLACE(v, '..(.{6})..(..)', '\1\2') x5
  FROM t
;

 


by 킨지 [2019.09.17 17:16:36]

답변감사합니다.

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