[DB] Join

찬들이·2022년 9월 29일
0

컴퓨터공학

목록 보기
28/34

조인(Join)이란?

한 데이터베이스 내의 여러 테이블의 레코드를 조합하여 하나의 열로 표현한 것을 의미한다.

조인의 필요성

  • 관계형 데이터베이스의 구조적 특징으로 정규화를 수행하면 의미 있는 데이터의 집합으로 테이블이 구성되고 각 테이블끼리는 관계를 가진다.

  • 이와 같은 특징으로 관계형 데이터베이스는 저장 공간의 효율성과 확장성이 향상된다.

  • 각 테이블에 저장된 데이터를 효과적으로 검색하기 좋다.

내부조인(INNER JOIN)

  • 여러 애플리케이션에서 사용되는 가장 흔한 결합 방식이며 기본 조인 형식으로 간주된다.

  • 내부조인은 조인 구문에 기반한 2개의 테이블의 컬럼 값을 결합함으로써 새로운 결과 테이블을 생성한다.

  • 명시적 조인표현과 암시적 조인 표현이 있다.

    명시적 조인 표현

    SELECT * FROM employee INNER JOIN department ON employee.DepartmentID = department.DepartmentID;

    암시적 조인 표현

    SELECT * FROM employee, department WHERE employee.DepartmentID = department.Department

    동등조인(Equal JOIN)

  • 비교자 기반의 조인이며, 조인 구문에서 동등 비교만을 사용한다.

    자연조인(NATURAL JOIN)

    동등 조인의 한 유형으로 조인 구문이 조인된 테이블에서 동일한 컬럼명을 가진 2개의 테이블에서 모든 컬럼들을 비교함으로써 암시적으로 일어나는 구문이다.
    SELECT * FROM employee NATURAL JOIN department;

    교차조인(CROSS JOIN)

    조인되는 두 테이블에서 곱집합을 반환한다. 내부조인과 같이 명시적 암시적 표현을 가지고 있다.

    명시적 조인 표현

    SELECT * FROM employee CROSS JOIN department;

    암시적 조인 표현

    SELECT * FROM emplyee, department;

    외부조인(OUTER JOIN)

    조인 대상 테이블에서 특정 테이블의 데이터가 모두 필요한 상황에서 외부 조인을 호라용하여 효과적으로 결과 집합을 생성할 수 있다.

    왼쪽 외부 조인(LEFT OUTER JOIN)

    우측 테이블에 조인할 컬럼의 값이 없는 경우 사용한다.
    SELECT * FROm empoyee LEFT OUTER JOIN department ON employee.DepartmentID = department.DepartmentID;

    오른쪽 외부 조인(RIGHT OUTER JOIN)

    좌측 테이블에 조인할 컬럼의 값이 없는 경우 사용한다.
    SELECT * FROM employee RIGHT OUTER JOIN department ON employee.DepartmentID=department.DepartmentID

    완전 외부 조인(FULL OUTER JOIN)

    양쪽 테이블 모두 OUTER JOIN이 필요할 떄 사용한다.
    SELECT * FROM employee FULL OUTER JOIN department ON employee,DepartmentID = department.DepartmentID;

profile
Junior-Backend-Developer

0개의 댓글