본문 바로가기

DB/MY-SQL

[MY-SQL] 3개의 테이블 조인(join)하기


1. 먼저 두개의 테이블을 조인
select 과목.이름,
과목.교수번호,
교수.이름,
교수.학과번호
from 과목, 교수
where 과목.교수번호 = 교수.번호

2. 조인된 테이블에 다른 테이블을 추가. 이때 외래키를 조건절에서 잘 조인해줘야한다.
select 과목.이름,
과목.교수번호,
교수.이름,
교수.학과번호,
학과.번호,
학과.이름
from 과목,교수,학과
where 과목.교수번호 = 교수.번호 and
교수.학과번호 = 학과.번호

3.필요속성만 출력
select 과목.이름,
--과목.교수번호,
교수.이름,
--교수.학과번호,
--학과.번호,
학과.이름
from 과목.교수번호 = 교수.번호 and
교수.학과번호 = 학과.번호

항상 생각해야 할 것은 두개의 테이블에서 존재하는 공통속성이다.
즉 수퍼키를 이용해서 조인이 이루어지게 된다는 것이다. 3개든 4개든 이 공식을 잘 성립하면
원하는 속성을 묶어서 출력할 수가 있다.

출처 : http://rajent.tistory.com

Select * From A left JOIN B
ON A.name = B.name
left JOIN C
ON A.name = C.name