database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 20659 게시물 읽기
No. 20659
쿼리 좀 부탁드립니다.
작성자
hardline
작성일
2004-11-09 20:59
조회수
1,319

A1 A2 A3

---------------

A 1 Z1

A 1 Z2

A 1 Z3

B 3 Z4

B 3 Z5

C 4 Z6

C 4 Z7

C 5 Z8

 

위와 같은 테이블에서 아래와 같은 결과를 추출하려 합니다.

 

-------

A 1

B 3

Z6 4

Z7 4

Z8 5

 

 

A1컬럼으로 GROUP BY 했을 경우 A2의 종류가 한가지인 경우는 A1컬럼을, A2의 종류가 2가지 이상인 경우에는 A3각각을 가져오는 쿼리를 만들려고 합니다.

위와 같은 경우 A1이 'A'일 경우 A2가 '1' 한종류만 있으면 A, 1을 가져오고

A1이 'C'일 경우 A2컬럼에는 '4', '5' 두종류가 있으므로 'C'그룹을 각각 분리하여 A3컬럼에 있는 Z6, Z7, Z8을 가져옵니다.

 

머리를 싸매고 있는데 답이 안나오네요.

이 글에 대한 댓글이 총 1건 있습니다.

select aaaa,a2
from
(select case when a.cnt = '1' then a.a1
            else b.a3
            end aaaa,
           b.a2
  from (select a1,a2,count(*) over (partition by a1 order by a1) AS CNT
          from test
         group by a1,a2) a,
        test b
 where a.a1 = b.a1 )
 group by aaaa,a2

나두초보님이 2004-11-10 10:33에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
20662노아카이브 모드에서.. 그냥 카피하면 쓸모 없나요? [1]
초보군
2004-11-10
1416
20661파티션된 테이블을 update 하면 병렬처리가 되나요? [1]
서지수
2004-11-10
1993
20660오라클 10g 에서 테이블 생성에러 (제약조건에서 에러) [1]
이형문
2004-11-09
2080
20659쿼리 좀 부탁드립니다. [1]
hardline
2004-11-09
1319
20658컬럼의 길이와 타입형식 수정을 어떻게 해야되나요? [4]
왕초보
2004-11-09
2415
20657[질문] 제약조건(primary key) 생성시 성능에 관한 질문입니다. [4]
2004-11-09
5089
20656ORA-00064 에러.. 뭐가 크다고 하는데.....
이덕희
2004-11-09
1522
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다