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 41054 게시물 읽기
No. 41054
쿼리 도움이요..쉬운듯 한데 안되네요.
작성자
gome
작성일
2016-01-20 00:08ⓒ
2016-01-20 00:10ⓜ
조회수
8,301

 하나의 쿼리로 작성할 예정입니다. 

 

 마스터 테이블 

A

B

C

 

조인테이블 (약 1천만건)

A ,  P1

A, P2

B,P2

B,P3

C,P1

C,P2

C,P4

 

가 있을때,, 마스터 기준으로 없는데이터만 가져오려고 합니다. 즉

 

A, B,P3

A,C,P4

B, A,P1

B,C,P4

C,B,P3

가 될까요? 

 

 

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

WITH mst_t AS
(
SELECT 'A' cd1 FROM dual
UNION ALL SELECT 'B' FROM dual
UNION ALL SELECT 'C' FROM dual
)
, data_t AS
(
SELECT 'A' cd1, 'P1' cd2 FROM dual
UNION ALL SELECT 'A', 'P2' FROM dual
UNION ALL SELECT 'B', 'P2' FROM dual
UNION ALL SELECT 'B', 'P3' FROM dual
UNION ALL SELECT 'C', 'P1' FROM dual
UNION ALL SELECT 'C', 'P2' FROM dual
UNION ALL SELECT 'C', 'P4' FROM dual
)
SELECT a.cd1, b.cd2
  FROM mst_t a
  LEFT OUTER JOIN data_t b
 PARTITION BY (b.cd2)
    ON a.cd1 = b.cd1
 WHERE b.cd1 IS NULL
 ORDER BY a.cd1, b.cd2
;


-결과-
CD1 CD2
--- ---
A   P3
A   P4
B   P1
B   P4
C   P3

마농(manon94)님이 2016-01-20 10:20에 작성한 댓글입니다.
이 댓글은 2016-01-20 10:23에 마지막으로 수정되었습니다.

 마농님 너무 감사합니다~

그런데 한컬럼이 더 필요한데 역시나..잘안되네요.ㅠ

P3를 가진 조인테이블의 CD1 컬럼이 하나만 나오면되는구조에요..

-결과-

CD1 CD1 CD2
--- ---
A   B  P3
A   C  P4
B   A  P1
B   C  P4
C   B  P3

 

gome님이 2016-01-20 13:38에 작성한 댓글입니다. Edit

SELECT cd1, cd3, cd2
  FROM (SELECT a.cd1
             , MIN(b.cd1) OVER(PARTITION BY b.cd2) cd3
             , b.cd2
             , b.cd1 x
          FROM mst_t a
          LEFT OUTER JOIN data_t b
         PARTITION BY (b.cd2)
            ON a.cd1 = b.cd1
        )
 WHERE x IS NULL
 ORDER BY cd1, cd3
;

마농(manon94)님이 2016-01-20 14:10에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
41057쿼리해석 부탁합니다 [1]
바랑
2016-01-21
9020
41056ROW를 합치고 싶습니다. [2]
저격왕
2016-01-21
8556
41055쿼리좀 알려주세요... [1]
피어스
2016-01-20
8141
41054쿼리 도움이요..쉬운듯 한데 안되네요. [3]
gome
2016-01-20
8301
41053회의실 예약 DB Layout 문의 [2]
IT재벌
2016-01-18
8211
41052pl/sql 여러 테이블에 여러 칼럼 지우고 싶습니다. [2]
조윤상
2016-01-18
8145
41050조회 속도를 개선하고 싶습니다. [2]
선이
2016-01-14
8765
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.046초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다