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 40462 게시물 읽기
No. 40462
outer join 조건에 대해 질문드립니다.
작성자
coll
작성일
2014-05-19 17:40
조회수
7,037

 select a.*

    from a a

           , b b

           , c c

 where a.col1  = b.col1(+)

     and a.col2 = b.col2(+)

     and b.col3 = c.col3(+)

     and c.col4(+) = '4'

 

위의 쿼리에서 마지막 조건절 c.col4(+) = '4'  / c.col4 = '4' 하고 차이점이 뭔가요??

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

아우터 조인이란
a 와 b 의 조인 조건이 만족하지 않더라도 a 는 모두 조회되는 것입니다.
위 쿼리에서는 a 를 기준으로 b 를 아우터 조인 했구요.
다시 또 연달아서 b 를 기준으로 c 를 아우터 조인하는 형태입니다.


여기서 마지막 조건에 아우터 기호(+)가 없다면?
c = '4' 를 만족하는 것만 조회됩니다.
조건을 만족하지 않아도 b 는 나와야 하고,
또한 연달아서 a 도 나와야 하는데
조건을 만족하지 않으면 b가 안나오게 됩니다.
즉, 아우터 조인을 하긴 했지만,
다시 필터조건으로 걸러내니 아우터 조인의 효과는 사라집니다.
아우터 조인 하나마나한 결과가 나오게 됩니다.


마지막 조건에 아우터 기호(+)가 있다면?
이 조건은 걸러내는 조건이 아닌 조인조건으로서 동작되겠지요.
c = '4' 를 만족하는 자료가 없더라도 b 는 나오게 되구요.
아우터 조인을 충족하게 됩니다.

마농(manon94)님이 2014-05-20 11:19에 작성한 댓글입니다.
이 댓글은 2014-05-20 11:19에 마지막으로 수정되었습니다.

마농님 귀한 시간 투자해주셔서 감사드립니다.

덕분에 훌륭한 가르침 배우고 갑니다.

아우터 조인이 이너 조인보다 조회 속도가 엄청 차이가 나니...감히 쓸 엄두를 안나네요. ㅠㅠ

coll님이 2014-05-21 02:25에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
40465랜덤하게 배치해야하는 문제입니다. 마농님 도와주세요... [2]
도끼발
2014-05-21
7414
40464오라클 에러 로그(ora-04063)
디비초보
2014-05-20
8352
40463리눅스에서 테이블 스페이스 생성하기...
염정훈
2014-05-20
7223
40462outer join 조건에 대해 질문드립니다. [2]
coll
2014-05-19
7037
40461숫자 패턴 검색하여 변경 [4]
새터니
2014-05-19
8233
40460쿼리 좀 질문 드립니다.
천인성
2014-05-19
6578
40459쿼리 좀 질문 드립니다.
선한양심
2014-05-16
6391
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다