두 개의 데이터베이스가 존재할 때, 이를 연결하기 위해서 join을 사용한다.
join에도 inner join과 outer join이 있는데 이를 알아보자~
이렇게 두 개의 데이터 베이스가 있을 때, 이를 Inner Join 해보자.
SELECT *
FROM DATA1
INNER JOIN DATA2 ON DATA1.key = DATA2.key;
or
SELECT *
FROM DATA1
JOIN DATA2 ON DATA1.key = DATA2.key
두 데이터베이스에 공통적으로 존재하는 A, B, C에 대해서만 join이 이루어진다.
Left Join
이렇게 두 개의 데이터베이스가 있을 때, 이를 Left Join 해보자.
SELECT *
FROM DATA1
LEFT JOIN DATA2 ON DATA1.key = DATA2.key;
왼쪽 데이터베이스에 오른쪽 데이터베이스를 붙이는 형식으로 결과가 나온다.
오른쪽 데이터에 없는 값들은 결측치로 처리된다.
Right Join
이번에는 오른쪽 데이터베이스에 맞춰 Right Join을 해보자.
SELECT *
FROM DATA1
RIGHT JOIN DATA2 ON DATA1.key = DATA2.key;
이렇게 왼쪽 데이터베이스에 없는 값들은 결측치로 처리된다.
데이터의 순서 차이이므로 굳이 Right Join을 쓰기 보다는 Left Join을 활용하는 것이 낫다.
Full Outer Join
Full Outer Join은 두 데이터 베이스를 그냥 갖다 붙여 연결한다고 생각하면 된다.
SELECT *
FROM DATA1
FULL OUTER JOIN DATA2 ON DATA1.key = DATA2.key;
서로 존재하지 않는 값들은 결측치로 대체된다.