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 41967 게시물 읽기
No. 41967
쿼리 질문드립니다!
작성자
뽕구파파
작성일
2023-08-08 17:11ⓒ
2023-08-09 22:20ⓜ
조회수
347



학생

학번 이름
123 홍길동
124 홍길순


학력

학번 학교
123 홍길고
123 홍길대
124 길순대


자격증

학번 자격증
123 자격1
124 자격2
124 자격3


결과

학번 이름 학교 자격증
123 홍길동 홍길고 자격1
123 홍길동 홍길대 null
124 홍길순 길순대 자격2
124 홍길순 null 자격3


학력과 자격증을 동시에 나열할 때 학력의 데이터가 많을수도 있고 자격증이 많을수도 있는데 많은 데이터를 기준으로 

데이터를 뽑고 싶습니다.. 없을 경우 null 처리

도움 부탁드립니다! 

 

이 글에 대한 댓글이 총 1건 있습니다.
WITH 인사 AS
(
SELECT 123 학번, '홍길동' 이름 FROM dual
UNION ALL SELECT 124, '홍길순' FROM dual
)
, 학력 AS
(
SELECT 123 학번, '홍길고' 학교 FROM dual
UNION ALL SELECT 123, '홍길대' FROM dual
UNION ALL SELECT 124, '길순대' FROM dual
)
, 자격증 AS
(
SELECT 123 학번, '자격1' 자격증 FROM dual
UNION ALL SELECT 124, '자격2' FROM dual
UNION ALL SELECT 124, '자격3' FROM dual
)
SELECT 학번
     , 이름
     , 순번
     , MIN(학교) 학교
     , MIN(자격증) 자격증
  FROM (SELECT a.학번
             , a.이름
             , ROW_NUMBER() OVER(PARTITION BY a.학번 ORDER BY 1) 순번
             , b.학교
             , '' 자격증
          FROM 인사 a
             , 학력 b
         WHERE a.학번 = b.학번
         UNION ALL
        SELECT a.학번
             , a.이름
             , ROW_NUMBER() OVER(PARTITION BY a.학번 ORDER BY 1) 순번
             , '' 학교
             , b.자격증
          FROM 인사 a
             , 자격증 b
         WHERE a.학번 = b.학번
        )
 GROUP BY 학번, 이름, 순번
 ORDER BY 학번, 순번
;
마농(manon94)님이 2023-08-09 14:33에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
41970데이타베이스와 테이블이 안보이네요!!! [1]
신승익
2023-08-22
1020
41969OR EXPANSION 가능하도록 가능한지 확인 부탁드립니다. [2]
김병두
2023-08-21
1033
41968쿼리 좀 도와주세요. 도저히 못 구하겠어요 [3]
김진수
2023-08-11
860
41967쿼리 질문드립니다! [1]
뽕구파파
2023-08-08
347
41966SqL 도움 요청입니다. [2]
김진수
2023-07-25
558
41964스칼라 서브쿼리를 아우터 조인으로 [1]
유경일
2023-07-12
856
41963조건에 따른 order by 설정 [3]
차상환
2023-06-16
2767
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다