[sql] SQL 데이터베이스의 데이터 조인

데이터베이스에서 작업을 할 때, 종종 여러 테이블에 저장된 데이터를 조합해야 하는 경우가 있습니다. 이때 데이터 조인은 매우 유용한 기술입니다. SQL 데이터베이스에서 데이터를 조인하는 방법에 대해 알아보겠습니다.

데이터 조인이란?

데이터 조인은 하나 이상의 테이블에서 데이터를 가져와서 연관된 항목들을 연결하는 프로세스입니다. 예를 들어, 주문 정보를 포함하는 “주문” 테이블과 제품 정보를 포함하는 “제품” 테이블이 있다면, 이 두 테이블을 조인하여 주문과 제품 정보를 함께 볼 수 있습니다.

INNER JOIN

가장 일반적인 조인 유형 중 하나는 INNER JOIN 입니다. INNER JOIN은 두 테이블 간의 공통된 값을 기반으로 행을 결합합니다. 아래는 간단한 INNER JOIN의 예제입니다.

SELECT 주문.주문번호, 제품.제품명
FROM 주문
INNER JOIN 제품 ON 주문.제품번호 = 제품.제품번호;

위 예제에서, “주문” 테이블과 “제품” 테이블을 조인하여 각 주문의 제품명을 가져오는 쿼리를 보여줍니다.

OUTER JOIN

INNER JOIN과는 달리, OUTER JOIN은 공통된 값을 가지지 않는 행도 포함합니다. LEFT OUTER JOIN과 RIGHT OUTER JOIN은 왼쪽 또는 오른쪽 테이블의 모든 행을 포함한 상태에서 다른 테이블과 매칭됩니다.

SELECT 고객.고객명, 주문.주문번호
FROM 고객
LEFT OUTER JOIN 주문 ON 고객.고객번호 = 주문.고객번호;

위 예제의 LEFT OUTER JOIN은 모든 고객 정보를 포함하고, 해당 고객의 주문이 있을 경우 주문 정보도 함께 가져오는 쿼리입니다.

CROSS JOIN

CROSS JOIN은 두 테이블 간의 모든 가능한 조합을 만듭니다. 이는 대규모 데이터베이스에서는 사용을 꺼려지지만, 특정 경우에 유용할 수 있습니다.

SELECT *
FROM 테이블A
CROSS JOIN 테이블B;

위 예제에서는 “테이블A”와 “테이블B” 간의 CROSS JOIN을 보여줍니다.

데이터 조인은 데이터베이스에서 두 테이블 이상을 연결하는 강력한 도구입니다. INNER JOIN, OUTER JOIN, CROSS JOIN 등을 사용하여 여러 테이블의 데이터를 효과적으로 결합할 수 있습니다.

참고문헌: