데이터베이스에서 여러 개의 테이블을 가지고 작업할 때, 테이블 간의 관계를 맺어야 할 때가 있습니다. SQL JOIN은 이러한 테이블 간의 관계를 맺어주는 기능을 제공합니다.
JOIN이란?
JOIN은 둘 이상의 테이블을 연결하여 하나의 결과 테이블을 생성하는 SQL 문입니다. JOIN을 통해 연결된 테이블들의 열(Column)을 기준으로 데이터를 조회하거나 조작할 수 있습니다.
JOIN의 종류
1. INNER JOIN
INNER JOIN은 조인 조건에 맞는 행(row)들만 결과로 반환합니다. 즉, 연결된 테이블들 간의 공통된 값을 가진 행들만 포함됩니다.
SELECT *
FROM 테이블1
INNER JOIN 테이블2 ON 조인조건;
2. LEFT JOIN
LEFT JOIN은 왼쪽 테이블의 모든 행(row)들을 결과로 반환하고, 오른쪽 테이블과 연결된 값이 있는 경우에는 해당 값을 포함합니다. 연결된 값이 없는 경우에는 NULL로 표시됩니다.
SELECT *
FROM 테이블1
LEFT JOIN 테이블2 ON 조인조건;
3. RIGHT JOIN
RIGHT JOIN은 왼쪽 테이블과 연결된 값이 있는 경우에는 해당 값을 포함하고, 오른쪽 테이블의 모든 행(row)들을 결과로 반환합니다. 연결된 값이 없는 경우에는 NULL로 표시됩니다.
SELECT *
FROM 테이블1
RIGHT JOIN 테이블2 ON 조인조건;
4. FULL OUTER JOIN
FULL OUTER JOIN은 왼쪽 테이블과 오른쪽 테이블의 모든 행(row)들을 결과로 반환합니다. 연결된 값이 있는 경우 해당 값을 포함하고, 연결된 값이 없는 경우에는 NULL로 표시됩니다.
SELECT *
FROM 테이블1
FULL OUTER JOIN 테이블2 ON 조인조건;
JOIN 사용 시 주의사항
- 조인조건은 테이블 간의 매칭 기준이 되는 열(Column)들 간의 관계를 설정해야 합니다.
- 조인 조건에 맞는 인덱스(index)를 생성하여 성능을 최적화할 수 있습니다.
- 여러 개의 테이블을 조인할 경우, 조인 순서에 따라 결과가 달라질 수 있으므로 유의해야 합니다.
SQL JOIN은 데이터베이스에서 테이블 간의 관계를 맺을 때 매우 유용한 기능입니다. INNER JOIN부터 FULL OUTER JOIN까지 다양한 조인 방식을 통해 원하는 결과를 얻을 수 있습니다.
더 자세한 내용은 링크1과 링크2에서 확인할 수 있습니다.
#sql #join