데이터베이스/데이터베이스 공부
조인(Join)의 종류(내부 조인, 왼쪽 조인, 오른쪽 조인, 합집합 조인)
아밍나
2022. 8. 23. 23:27
728x90
조인
하나의 테이블이 아닌 두 개 이상의 테이블을 묶어서 하나의 결과물을 만드는 것.
- MySQL에서는 JOIN이라는 쿼리로, MongoDB에서는 lookup이라는 쿼리로 처리할 수 있다.
- 여러 테이블을 조인하는 작업이 많을 경우 관계형 데이터베이스를 쓴다.
→ MongoDB는 관계형 데이터베이스보다 조인 연산에 대해 성능이 떨어지기 때문에 lookup은 되도록 사용하지 않는다.
조인의 종류
- 내부 조인: 테이블 A와 테이블 B의 두 행이 모두 일치하는 행이 있는 부분만 표기.
SELECT *
FROM TABLE_A A INNER JOIN TABLE_B B
ON A.KEY = B.KEY;
- 왼쪽 조인: 테이블 A의 모든 행이 결과 테이블에 표기.
SELECT *
FROM TABLE_A A LEFT JOIN TABLE_B B
ON A.KEY = B.KEY;
→ 테이블 B에 일치하는 항목이 없다면 해당 값은 NULL
- 오른쪽 조인: 테이블 B의 모든 행이 결과 테이블에 표기.
SELECT *
FROM TABLE_A A RIGHT JOIN TABLE_B B
ON A.KEY = B.KEY;
→ 테이블 A에 일치하는 항목이 없다면 해당 값은 NULL
- 합집합 조인: 두 개의 테이블을 기반으로 조인 조건에 만족하지 않는 행까지 모두 표기.
SELECT *
FROM TABLE_A A FULL OUTER JOIN TABLE_B B
ON A.KEY = B.KEY;
→ 일치하는 항목이 없다면 누락된 쪽에 NULL 값이 포함되어 출력됨.
728x90
반응형