주소검색 질문드립니다. 0 3 898

by 클라나드 [SQL Query] 주소 정열 [2012.11.06 13:06:51]



주소와 주소 코드를 가져오는 작업을 하고있습니다.
컬럼은 5개입니다.
현재 쿼리입니다.

SELECT ADDR_CALSS1, ADDR_CLASS2, ADDR_CLASS3, ADDR_CD
FROM ZIP_CODE
WHERE ADDR_CLASS1 = '강원도'
AND ADDR_CLASS2 = '강릉시'

검색결과입니다. 일부분입니다.

ADDR_CALSS1 강원도,강원도,강원도,강원도,강원도,강원도....
ADDR_CLASS2 강릉시,강릉시,강릉시,강릉시,강릉시,강릉시....
ADDR_CLASS3 주문진읍, 주문진읍, 주문진읍, 주문진읍, 주문진읍....
ADDR_CD  4215025000,4215025021,4215025002,4215025003....

문제는 ADDR_CLASS4 컬럼에 방내리, 영진리,, 등등 리들이 있어서
각각 리들에 대한 주소코드때문에 이렇게나오는겄입니다.

제가원하는 결과는
ADDR_CALSS1 강원도
ADDR_CLASS2 강릉시
ADDR_CLASS3 주문진읍
ADDR_CD 4215025000
이렇게 나오길원합니다.

제능력으론 안되네요ㅠㅠ 도움부탁드립니다..
by 클라나드 [2012.11.06 13:10:09]

MAX()와
ORDER BY 를 사용하니
원하는결과를 얻을수있네요.
죄송합니다 허접한 질문올려서 ㅠㅠ


by 마농 [2012.11.06 13:10:20]
SELECT addr_calss1, addr_class2, addr_class3
     , MIN(addr_cd) addr_cd
  FROM zip_code
 WHERE addr_class1 = '강원도'
   AND addr_class2 = '강릉시'
 GROUP BY addr_calss1, addr_class2, addr_class3
;

by 부쉬맨 [2012.11.06 13:12:18]
 
with t as
(
select 'ADDR_CALSS1 강원도,강원도,강원도,강원도,강원도,강원도....' addr from dual union all
select 'ADDR_CLASS2 강릉시,강릉시,강릉시,강릉시,강릉시,강릉시....' from dual union all
select 'ADDR_CLASS3 주문진읍, 주문진읍, 주문진읍, 주문진읍, 주문진읍....' from dual union all
select 'ADDR_CD 4215025000,4215025021,4215025002,4215025003.... ' from dual
)select 
replace(substr(addr,1,instr(addr,',')),',') ch1
 from t
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입