데이터베이스
[SQL] SQL 조인의 종류
연화
2025. 1. 8. 18:31
SQL(Structured Query Language)에서 조인(JOIN)은 여러 테이블에서 데이터를 결합하고 관련 정보를 가져오는 데 사용됩니다. 데이터베이스 설계 시 데이터를 여러 테이블로 나누어 관리하는 것이 일반적이므로, 조인은 데이터 간의 관계를 바탕으로 필요한 정보를 효율적으로 조회하는 데 핵심적인 역할을 합니다.
1. 조인의 종류
- INNER JOIN
- 두 테이블에서 공통된 값을 가진 행만 반환
- 교집합에 해당하는 데이터를 조회할 때 사용
- LEFT JOIN (LEFT OUTER JOIN)
- 왼쪽 테이블의 모든 행과 오른쪽 테이블에서 일치하는 행을 반환
- 일치하지 않는 경우 NULL을 반환
- 왼쪽 테이블의 데이터를 우선적으로 보고자 할 때 사용
- RIGHT JOIN (RIGHT OUTER JOIN)
- 오른쪽 테이블의 모든 행과 왼쪽 테이블에서 일치하는 행을 반환
- 일치하지 않는 경우 NULL을 반환
- 오른쪽 테이블의 데이터를 우선적으로 보고자 할 때 사용
- FULL JOIN (FULL OUTER JOIN)
- 두 테이블의 모든 행을 반환
- 일치하지 않는 경우 NULL을 반환
- 합집합 데이터를 조회할 때 사용
- CROSS JOIN
- 두 테이블의 모든 행의 조합(카르테시안 곱)을 반환
- 테이블 간의 모든 경우의 수를 확인할 때 사용
2. 조인 구문
- INNER JOIN
SELECT A.column1, B.column2
FROM TableA A
INNER JOIN TableB B
ON A.common_column = B.common_column;
- LEFT JOIN
SELECT A.column1, B.column2
FROM TableA A
LEFT JOIN TableB B
ON A.common_column = B.common_column;
- RIGHT JOIN
SELECT A.column1, B.column2
FROM TableA A
RIGHT JOIN TableB B
ON A.common_column = B.common_column;
- FULL JOIN
SELECT A.column1, B.column2
FROM TableA A
FULL JOIN TableB B
ON A.common_column = B.common_column;
- CROSS JOIN
SELECT A.column1, B.column2
FROM TableA A
CROSS JOIN TableB B;
SQL 조인은 데이터 간의 관계를 활용해 복잡한 분석을 수행할 수 있도록 돕는 강력한 도구입니다.
올바른 조인의 사용법을 이해하면 데이터베이스 쿼리를 보다 효율적으로 작성하고 원하는 결과를 쉽게 얻을 수 있습니다.