728x90
JOIN
- 데이터를 검색할 때 두 개 이상의 테이블을 서로 연결하여 검색하는 방법을 의미한다.
INNER JOIN
- 기준 테이블과 JOIN하는 테이블 모두 같은 칼럼 데이터가 존재해야 한다.(ON 절을 기준으로 조회)
- MySQL에서는 JOIN, INNER JOIN, CROSS JOIN이 모두 같은 의미로 사용된다.
FULL OUTER JOIN
- 두 테이블의 모든 값을 유지하여 출력한다.
- MySQL에서는 FULL OUTER JOIN을 지원하지 않아 LEFT OUTER JOIN의 결과와 RIGHT OUTER JOIN의 결과를 UNION 하는 방식으로 사용해야 한다.(그림 맨 아래에서 오른쪽)
- 보통은 성능 문제로 사용하지 않는다.
ex)
SELECT * FROM tableA A LEFT JOIN tableB B
UNION
SELECT * FROM tableA A RIGHT JOIN tableB B
LEFT/RIGHT OUTER JOIN
- LEFT JOIN = LEFT OUTER JOIN
- RIGHT JOIN = RIGHT OUTER JOIN
- 두 테이블을 합칠 때 왼쪽/오른쪽 테이블 중 어느 쪽을 기준으로 했는지에 따라 기준 테이블의 것을 모두 출력하고, 일치하지 않은 부분은 null 값으로 채워진다.
참고 :
728x90
'넓고 얕은 데이터베이스 지식 > SQL' 카테고리의 다른 글
SQL - SELECT 문 (0) | 2023.04.23 |
---|---|
SQL 구문 (0) | 2023.04.23 |
SQL 소개 (0) | 2023.04.23 |
관계형 데이터베이스 설계 (0) | 2022.10.06 |
DBMS & RDBMS & SQL & NOSQL 3분 요약 정리 (1) | 2022.10.05 |