728x90
반응형
[MySQL] 21. OUTER JOIN
1. OUTER JOIN /LEFT JOIN
2. 시나리오 코드 : LEFT JOIN
3. 시나리오 코드 : RIGHT JOIN
1. OUTER JOIN /LEFT JOIN
-왼쪽 테이블을 기준으로 합치며, ON 절에 있는 조건 컬럼의 값이 같은 데이터를 합친다.
-오른쪽 테이블에 값이 같은 데이터가 없다면, NULL이 삽입된다.
*INNER JOIN은 NULL 값이 표현되지 않는다.
-아래의 두 테이블로 OUTER JOIN을 실행한다면, 왼쪽의 student 테이블과, join된 grade만 표현된다.
2. 시나리오 코드 : LEFT JOIN
(1) 1단계
-- 1단계
select *
from tb_stduent as s
left join tb_grade as g
on s.grade=g.grade;
(2) 2단계
-1단계에서는 tb_stduent가, 2단계에서는 tb_grade가 기준이 되고 있다.
-테이블의 기준이 어떤 것이냐에 따라서 표의 모양이 달라진다.
=> 먼저 접근하는 테이블이 기준 테이블이 된다! (LEFT JOIN)
-- 2단계
select *
from tb_grade as g
left join tb_stduent as s
on g.grade=s.grade;
3. 시나리오 코드 : RIGHT JOIN
(1) RIGHT JOIN
-LEFT JOIN 2단계와 비교할 수 있다.
-- RIGHT OUTER JOIN
select *
from tb_stduent as s
right join tb_grade as g
on s.grade=g.grade;
728x90
반응형
'MySQL > 기본 개념 및 지식' 카테고리의 다른 글
[MySQL] 23. SQL Function (0) | 2024.06.07 |
---|---|
[MySQL] 22. 테이블 복사 및 데이터 추가 (0) | 2024.06.05 |
[MySQL] 20. JOIN (0) | 2024.06.05 |
[MySQL] 19. 시나리오 코드로 관계 차수 이해하기 : 야구 팀과 야구 선수 (0) | 2024.06.04 |
[MySQL] 18. 관계 차수 (0) | 2024.06.04 |