DB관련/Oracle

Oracle 쿼리중에 (+) 의 의미 - where절에 더하기 표시의 의미

saltdoll 2018. 3. 15. 06:36
반응형

Oracle 쿼리중에 (+)가 있는걸 보고 참 생소해서 확인해 보니.

해당 쿼리가 OUTER JOIN을 위한 표현입니다.

 

SELECT * FROM a, b WHERE b.id(+)  = a.id  -- Oracle OUTER JOIN

SELECT * FROM a LEFT OUTER JOIN b ON b.id = a.id -- 동일한 표현

 

a.id = b.id (+) -- LEFT OUTER

 

A.id(+) = b.id  -- RIGHT OUTER

 

Join의 형태

Outer Join은 정상적으로 조인 조건을 만족하지 못하는 행들까지도 보기위한 방법입니다.

 

테이블 예제
LEFT OUTER조인과 2개의 조인

(그림 예제 출처 :m.blog.naver.com/yysvip/220132590942 )

 

OUTERJOIN의개념및원리.doc
0.17MB

 

(+)기호는 Oracle 8i까지는 한쪽에만 가능, Oracle 9i이후부터 Full Outer Join으로 양쪽까지 가능

 

 

Meaning of (+) in SQL queries

https://stackoverflow.com/questions/517557/meaning-of-in-sql-queries

반응형