▼ DataBase, NoSQL
MariaDB | JOIN의 종류
Valar
2021. 7. 6. 11:25
반응형
JOIN(조인)이란?
검색하고 싶은 컬럼이 다른 테이블에 있을 경우 사용하며 여러 개의 테이블을 하나의 테이블인 것처럼 활용하는 방법이다. 보통 Primary key 혹은 Foreign key로 두 테이블을 연결하여 사용한다.
INNER JOIN, JOIN
기준 테이블과 조인 테이블의 중복된 값을 보여준다.
A테이블과 B테이블이 모두 가지고 있는 데이터가 검색된다.
// INNER JOIN
SELECT
A.컬럼
B.컬럼
FROM
기준테이블 A INNER JOIN 조인테이블 B
ON A.기준키 = B.기준키
// JOIN
SELECT
A.컬럼
B.컬럼
FROM
기준테이블 A JOIN 조인테이블 B
ON A.기준키 = B.기준키
LEFT OUTER JOIN, LEFT JOIN
왼쪽 테이블을 기준으로 JOIN 한다.
기준 테이블의 결과 + 기준테이블의 중복 값을 보여준다.
// LEFT OUTER JOIN
SELECT
A.컬럼
B.컬럼
FROM
기준테이블 A LEFT OUTER JOIN 조인테이블 B
ON A.기준키 = B.기준키
// LEFT JOIN
SELECT
A.컬럼
B.컬럼
FROM
기준테이블 A LEFT JOIN 조인테이블 B
ON A.기준키 = B.기준키
RIGHT OUTER JOIN, RIGHT JOIN
오른쪽 테이블을 기준으로 JOIN 한다.
기준 테이블의 결과 + 기준테이블의 중복 값을 보여준다.
// RIGHT OUTER JOIN
SELECT
A.컬럼
B.컬럼
FROM
기준테이블 A RIGHT OUTER JOIN 조인테이블 B
ON A.기준키 = B.기준키
// RIGHT JOIN
SELECT
A.컬럼
B.컬럼
FROM
기준테이블 A RIGHT JOIN 조인테이블 B
ON A.기준키 = B.기준키
FULL OUTER JOIN
A 테이블의 데이터 , B테이블의 데이터 모두 검색된다.
// FULL OUTER JOIN
SELECT
A.컬럼
B.컬럼
FROM
기준테이블 A FULL OUTER JOIN 조인테이블 B
ON A.기준키 = B.기준키
*MariaDB 에서는 FULL OUTER JOIN은 지원하지 않는다.
따라서 UNION을 이용한 방법을 사용한다.
UNION은 여러개의 SQL문을 합쳐 하나의 SQL문으로 만들어주는 방법이다. (합집합)
SELECT *
FROM 기준테이블 A LEFT JOIN 조인테이블 B ON A.기준키 = B.기준키
UNION
SELECT *
FROM 기준테이블 A RIGHT JOIN 조인테이블 B ON A.기준키 = B.기준키
반응형