INNER Join : Join하고자 하는 두 컴럼의 값이 서로 같을 때 사용
OUTER Join : Join하고자 하는 두 컴럼의 값이 서로 다를 때 사용
A Table
B Table
- INNER JOIN(합집합) : 데이터가 공통적인 부분만 검색
< SELECT A.ID, A.ENAME, B.KNAME
FROM A INNER JOIN B ON A.ID = B.ID; >
< SELECT A.ID, A.ENAME, B.KNAME
FROM A,B WHERE A.ID = B.ID; >
< SELECT A.ID, A.ENAME, B.KNAME
FROM A LEFT OUTER JOIN B ON A.ID = B.ID
WHERE B.ID IS NOT NULL; >
- LEFT JOIN : 왼쪽 column을 기준으로 데이터가 공동되는 부분만 검색
(Data가 없을 경우 NULL로 채워져서 검색결과를 보여줌)
< SELECT A.ID, A.ENAME, B.KNAME
FROM A LEFT OUTER JOIN B ON A.ID = B.ID; >
- LEFT JOIN(차집합) : 왼쪽 column을 기준으로 where절로 조건을 주어, 데이터가 공통적인 부분을 제외한 left조인의 결과를 보여줌
< SELECT A.ID, A.ENAME, B.KNAME
FROM A LEFT OUTER JOIN B ON A.ID = B.ID
WHERE B.ID IS NULL; >
- FULL OUTER JOIN : 조인을 하고자하는 두 컬럼에서 공통된 데이터를 제외한 값의 결과를 보여줌
< SELECT A.ID, A.ENAME, B.KNAME
FROM A FULL OUTER JOIN B
ON A.ID = B.ID
WHERE A.ID IS NULL OR B.ID IS NULL; >