본문으로 바로가기

MySQL 전체 외부 조인(FULL OUTER JOIN)

category 데이터베이스/MySQL 2018. 12. 22. 15:43

MySQL 전체 외부 조인(FULL OUTER JOIN)

 

전체 외부 조인, FULL OUTER JOIN이라고 하는 조인에 대해 알아봐요

 

FULL OUTER JOIN은 왼쪽 테이블과 오른쪽 테이블 일치하는 모든 레코드를 반환한다고 보면 됩니다.

 

왼쪽 조인 오른쪽 조인의 합친...??

 

대신 굉장히 큰 집합이 반환 될 수도 있습니다.

 

형태는

전체 외부 조인 구문

SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2 ON table1.column_name = table2.column_name;

전체 외부 조인 구문

SELECT column_name(s)
FROM table1 left join table2

ON table1.column_name = table2.column_name;

 

union

 

SELECT column_name(s)
FROM table1 right join table2

ON table1.column_name = table2.column_name; 


이렇게 됩니다.

수정: 아쉽게도.. MYSQL에서 이를 지원 하지 않는답니다.... 그래서 left join과 rigth join을 union 하는 형태로 쓰인답니다.. 참고 부탁드려요 ^^

 

 

그림으로 보시죠.!!

 

SQL 전체 외부 조인


즉 전체가 됩니다.

 

즉 왼쪽 테이블과 오른쪽 테이블의 공통 부분 포함 전체 집합을 출력한다고 보면 됩니다.

 

전 포스팅에서 했던 예제를 토대로 해보도록 하죠.

 

기억이 안나시는 분은 전 포스팅 예제를 보고와주세요.

 

https://dlwjdcks5343.tistory.com/53

 

select *
from demo_people left join demo_property
on demo_people.pid = demo_property.pid


union


select *
from demo_people right join demo_property
on demo_people.pid = demo_property.pid;

이런식으로 질의를 만들고 실행해보면

이렇게 나옵니다.

 

즉 demo_people 과 demo_property 테이블 전체가 뽑히고 없는 부분도 나오게 됩니다.

'데이터베이스 > MySQL' 카테고리의 다른 글

MySQL GROUP BY/HAVING  (0) 2018.12.23
MySQL 자체 조인(self join)  (1) 2018.12.22
eXERD 설치  (0) 2018.12.21
MySQL LEFT/RIGHT 조인  (0) 2018.12.21
MYSQL 내부 조인  (0) 2018.12.20