1) 셀프조인

 

SELF JOIN

 

 

 

2) 문제

 

 

 

블로그 이미지

모데스티

,

1) 외부조인(Outer Join)

 

① SQL 1992 CODE

 

 

 

 

② ANSI JOIN  

ⓐ outer앞에는 left, right를 써줘야한다. outer도 생략이 가능하다.
ⓑ left >> 왼쪽의 테이블의 내용을 더 볼 수 있다. >> 1992코드의 e.department_id = d.department_id(+)
ⓒ right >> 오른쪽의 테이블의 내용을 더 볼 수 있다. >> 1992코드의 e.department_id(+) =     d.department_id

 

③ Left Outer Join 

 

 

④ Right Outer Join 

 

 

⑤ Full Outer Join 

 

 

 

2) 문제풀이

 

① 문제1

 

 

② 문제2 

 

 

③ 문제3 

 

 

④ 문제4 

 

 

 

 

 

 

 

블로그 이미지

모데스티

,

1) Cartesian Product 

 

* Cartesian product

 

>> A와 B를 조인할 때, 조인의 조건을 생략하고 A의 모든 행이 B의 모든 행들과 조인되는 경우

>> 모든 행들의 조합이 출력되어 많은 결과를 출력할 수 있지만 과부화의 위험이 있다.

 

* Cartesian product의 결과

 

① Employees Table >> 107개의 행

 

 

② Departments Table >> 27개의 행

 

 

 

③ Employees Table과 Department Table의 조인결과 >> 2889개의 행 

 

 

2) 내부조인(Inner Join)

 

>> 정확하게 일치하는 데이터만 가지고 오기때문에 Null값이 제외된다.

>> Null값을 포함하여 보고싶으면 외부조인을 사용한다.

 

 

 

3) 예제 >> Steven King 씨의 부서명을 출력하세요.

 

① SQL 1992 CODE방식  

 

>> Steven King의 부서명을 알 수 있다.

 

② ANSI JOIN

>> SQL 1992 CODE와 같은 결과를 얻을 수 있다.

 

③ USING

>> 조인하려는 두 테이블의 컬럼이름이 동일할 경우에만 사용가능하다. 

 

>> Steven King의 부서명을 알 수 있다.

 

3) Natural Join

>> Primary key와 Foreign key가 한 가지로 연관되어있어야 한다. 

 

 

 

 

 

 

 

 

 

 

 

블로그 이미지

모데스티

,