알고리즘/Oracle Database 11g

[Oracle Database 11g] JOIN

알 수 없는 사용자 2018. 3. 4. 18:35

JOIN


- ORACLE에서 서로 다른 두 테이블에 존재하는 데이터를 하나의 테이블처럼 

  사용, 조회하고 싶을 때 사용한다.

- JOIN은 Inner Join, Outer Join, Cross Join, Self Join 등이 있다.

- 이 글에서는 Inner join의  Equi Join, Natural Join과 Outer Join의 Left Outer Join 에 대해 알아볼 것이다.




1. INNER JOIN

 1) Equi Join : 각 테이블에 존재하는 데이터 중 WHERE 절의 조건에 해당하는 데이터를 반환하는 조인방식


   SQL >>


SELECT * 

FROM   emp, dept 

WHERE  emp.deptno = dept.deptno ;


   RESULT >>



 2) Natural Join : Equi Join 과 유사하지만 중복된 칼럼은 출력되지 않는다.

   SQL >>


SELECT * FROM emp NATURAL JOIN dept ;


   RESULT >>



2. OUTER JOIN

 1) Left Outer Join : 왼쪽 테이블 전체를 가져온 후 조건에 일치하는 데이터를 오른쪽에 표시한다. 

    일치하는 데이터가 없다면 NULL을 표시한다.


   SQL>>


SELECT studno, s.name, s.profno, p.name

FROM   student s LEFT OUTER JOIN professor p

ON     s.profno = p.profno;


   RESULT >>