select 할때 주소명 자르기 0 3 1,507

by 쌈장묵자 [Oracle 기초] [2016.05.04 10:07:27]


서울특별시 종로구 율곡로  -> 서울특별시

인천광역시 남구 남주길 -> 인천광역시

제주특별자치도 서귀포시 동홍로 -> 제주특별자치도

경기도 수원시 팔달구 갓매산로 ->경기도 수원시

전라남도 영암군 삼호읍 대불로  -> 전라남도 영암군

충청남도 금산군 금산읍 오리정로 -> 충청남도 금산군

ㅇㅣ런식으로 테이블에 등록된 주소를 select 할때 -> 처럼 잘라서 뽑고 싶은데

이게 가능할까요?

 

by 우리집아찌 [2016.05.04 10:18:25]

제주특별자치도가 다른도가 패턴이 틀려요  


by 마농 [2016.05.04 11:20:47]
WITH t AS
(
SELECT '서울특별시 종로구 율곡로' addr FROM dual
UNION ALL SELECT '인천광역시 남구 남주길' FROM dual
UNION ALL SELECT '제주특별자치도 서귀포시 동홍로' FROM dual
UNION ALL SELECT '경기도 수원시 팔달구 갓매산로' FROM dual
UNION ALL SELECT '전라남도 영암군 삼호읍 대불로' FROM dual
UNION ALL SELECT '충청남도 금산군 금산읍 오리정로' FROM dual
)
SELECT addr
     , SUBSTR(addr, 1
       , INSTR(addr, ' ', 1
       , CASE WHEN SUBSTR(addr, 1, 2)
                IN ('서울','제주','광주','대구','부산','울산','인천','대전','세종')
              THEN 1 ELSE 2 END 
       ) - 1) x
  FROM t
;

 


by 쌈장묵자 [2016.05.04 13:11:53]

정말 감사합니다 너무 많이 배워 갑니다 ㅎㅎ

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