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 38802 게시물 읽기
No. 38802
명시적 조인시 테이블 3개를 조인할때는 어떻게 해줘야되는지 모르겠습니다.
작성자
윤명철(nidty)
작성일
2011-08-19 15:43
조회수
8,254

묵시적인 조인만 쓰다가

이번에 full outer johin 을 쓰다보니 묵시적인 조인을 못쓰게 되었습니다.

공부했던 예제도 그렇고 인터넷 자료들도 2개의 테이블의 명시적인 조인만 표현이되어서..

3개 이상의 테이블의 명시적 조인은 어떻게 해야되는지 모르겠습니다.

 

아래는 예제.

 

 

WITH AA AS (SELECT '1' AS Q
                   ,'AAW' AS HH
                   ,'AAE' AS JJ
               FROM DUAL
            )
    ,BB AS (SELECT '1' AS Q
                  ,'BBW' AS KK
                  ,'BBE' AS LL
              FROM DUAL
           )
    ,CC AS (SELECT '1' AS Q
                  ,'CCW' AS MM
                  ,'CCE' AS NN
              FROM DUAL
           )
SELECT AA.Q
      ,AA.HH
      ,AA.JJ
      ,BB.KK
      ,BB.LL
      ,CC.MM
      .CC.NN
FROM AA FULL OUTER JOIN BB
       ON AA.Q = BB.Q
    ,AA FULL OUTER JOIN CC
       ON AA.Q = CC.Q

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

자문 자답입니다.

조인절을 이렇게 하니 됩니다.

FROM AA FULL OUTER JOIN BB
       ON AA.Q = BB.Q
    FULL OUTER JOIN CC
       ON AA.Q = CC.Q

윤명철(nidty)님이 2011-08-19 15:53에 작성한 댓글입니다.

같은 q 값으로만 테스트 하니 문제점을 모르실 듯 하네요.

WITH aa AS (SELECT '1' q, 'AAW' hh, 'AAE' jj FROM dual)
   , bb AS (SELECT '2' q, 'BBW' kk, 'BBE' ll FROM dual)
   , cc AS (SELECT '2' q, 'CCW' mm, 'CCE' nn FROM dual)
SELECT COALESCE(aa.q, bb.q, cc.q) q
     , aa.hh
     , aa.jj
     , bb.kk
     , bb.ll
     , cc.mm
     , cc.nn
  FROM aa
  FULL OUTER JOIN bb
    ON aa.q = bb.q
  FULL OUTER JOIN cc
    ON NVL(aa.q, bb.q) = cc.q
 ORDER BY q
;

마농(manon94)님이 2011-08-19 16:06에 작성한 댓글입니다.
이 댓글은 2011-08-19 16:07에 마지막으로 수정되었습니다.

앗 답변 지금 봤습니다.

COALESCE 를 몰라서 그냥 case 문으로 노가다 하였습니다 하하..

감사합니다.

 

윤명철(nidty)님이 2011-08-25 10:17에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
38808proc에서 오라클 접속후 core dump 발생
초보디비
2011-08-22
4424
38807DELETE/INSERT 시간이 너무 오래 걸립니다 [2]
신동민
2011-08-22
4961
38803데이터 수정 시 이상한 문자로 들어가는 문제 [4]
바램
2011-08-19
3952
38802명시적 조인시 테이블 3개를 조인할때는 어떻게 해줘야되는지 모르겠습니다. [3]
윤명철
2011-08-19
8254
38801UPDATE 문에 관한 질문입니다.- 날짜 강제 변경 [1]
이상영
2011-08-19
4176
38800고수님들의 도움 간절히 원합니다...ㅜㅜ [3]
일쌍다반사
2011-08-19
7488
38798양쪽 아우터 조인과 같은 결과를 얻을려면 [2]
윤명철
2011-08-19
5306
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.016초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다