개발 보석함

이너조인(inner join)과 아우터조인(outer join)

by hiSon

JOIN : 두 테이블을 KEY 관계로 엮어 원하는 데이터를 추출하는 것

1. Inner join

데이터 집합체의 교집합

오라클

SELECT
e.emp_no
, e.empo_name
, d.dep_name
FROM
employee e, dept d
WHERE
e.dep_no = d.dep_no

ANSI

SELECT
e.emp_no
, e.emp_name
, d.dep_name
FROM
employee e inner join dept d
ON
e.dep_no=d.dep_no

2. Outer join

A집합체와 B집합체가 relation을 가질 때, 기준이 되는 집합체를 가지고 오면서 기준에 해당되는 비교대상집합체가 존재하면 표시되고 존재하지않으면 표시되지않는다.

B가 기준이 되는 집합체일 경우

오라클

SELECT
e.emp_no
, e.empo_name
, d.dep_name
FROM
employee e, dept d
WHERE
e.dep_no = d.dep_no(+)

ANSI

SELECT
e.emp_no
, e.emp_name
, d.dep_name
FROM
employee e left outer join dept d
ON
e.dep_no=d.dep_no

3. Cartesian join(카테시안 조인)

조인 조건이 없는 join으로, 모든 경우의 수가 다 나오게 된다.

오라클

SELECT
e.emp_no
, e.emp_name
, d.dep_name
FROM
employee e, dept d

ANSI

SELECT
e.emp_no
, e.emp_name
, d.dep_name
FROM
employee e left outer join dept d
ON
1=1
블로그의 프로필 사진

블로그의 정보

개발 보석함

hiSon

활동하기