본문 바로가기
데이터베이스/SQL

SQL 여러테이블 데이터 조인 Oracle OUTER JOIN

by ADELA_J 2023. 12. 28.

<OUTER JOIN>

- 이퀄 조인으로는 볼 수 없는 결과 데이터 출력하기 위해 사용

 

- OUTER JOIN은 양쪽에 다 존재하는 데이터만 출력하는 EQUI JOIN과는 다르게

조인테이블에 존재하지 않는 데이터도 출력함.

 

 

* 참고로 아래 내용은 Oracle에서 해당 됩니다.

▼ 사원 테이블(emp)과 부서테이블(dept)을 조인해 이름, 부서 위치 출력하는데

해당이 없는 지역도 다 출력되는 쿼리

출력물을 보면 BOSTON은 LOC에 뜨는 ename은 null값임.

▶ emp 테이블에 boston에 근무하는 직원이 없다는 것을 의미.

▷ 이렇게 출력되게 하는 것을 OUTER JOIN. 

▶ OUTER 조인 사인은 equi join에 (+) 를 추가해서 적는 것.

   ▷ 두 개의 테이블 중에 결과가 덜 나오는 쪽에 붙여줘야함. 

 

https://haenny.tistory.com/34

 

A테이블이 emp이고 B테이블이 dept이라면

 

LEFT JOIN은 emp 테이블에 존재하는데 dept 테이블에 존재하지 않는 데이터를 출력하는 것.

쿼리로 한다면 WHERE e.deptno = (+) d.deptno;

 

RIGHT JOIN은 dept 테이블에는 존재하는데 emp 테이블에는 존재하지 않는 것을 출력하는 것

쿼리는 WHERE e.deptno (+) = d.deptno; (위에서 한 것이 여기에 해당됨)

 

FULL OUTER JOIN은 추후에 LEFT/RIGHT OUTER와 함께,,,,,,,,,,,,,,