2개 이상(복수)의 행을 하나의 행으로 합치고 싶습니다. 0 2 2,585

by 요루 [SQL Query] 복수행을 단일행으로 [2011.03.25 15:03:45]



과목 테이블에는

과목번호  | 과목명    | 분반번호
010101     | C언어    | A


시간표 테이블에는

과목번호 | 분반번호 | 요일 | 강의실코드
010101    |    A     |  수   |    400호
010101    |    A |  목   |    500호



두 테이블을 조인하니까 2행으로 나오는데요 제가 원하는 결과는

010101  |   C언어 |  A   |   수 400호,  목 500호


위처럼 과목,분반별로 한줄로 보이게 하고 싶습니다.

도움좀 부탁드리겟습니다    




by 요루 [2011.03.25 15:08:42]
글 올리고 시도중 약간 해결한것습니다.
서브쿼리에서 rownum 을 조회하고
바깥 조회문에서 sum(decode) || sum(decode) 로 합치면 되는듯하는데 효율적일까요

by 티그리스 [2011.03.25 15:16:36]
sum(decode) || sum(decode) 이 방법은 두개까지만 처리됩니다. 이상일 경우에는

-- case 9i
계층쿼리를 이용한 방법으로 sys_connect_by_path() 를 이용해서 풀수 있고
-- case 10g
wm_concat() 이나 지원하지 않을경우에는 xml함수를 이용해 풀수 있습니다.
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입