[Oracle] JOIN

vednuegnuoy·2021년 7월 5일
0

JOIN

  • JOIN은 각 테이블 간에 공통된 컬럼(조건)으로 데이터를 합쳐 표현하는 것
  • JOIN을 통해 2개 이상의 테이블을 연결 가능
  • JOIN은 기본적으로 기본키나 외부키 값의 연관에 의해 성립되지만 논리적인 값들의 연관만으로도 성립이 가능
  • JOIN의 조건은 WHERE절에 기술

OUTER-JOIN
INNER-JOIN

ANSI JOIN (ANSI 표준 조인)
: JOIN절을 명시적으로 선언하여 질의문을 작성

EQUI JOIN(등가조인)
두 개의 테이블 간에 컬럼값 들이 정확하게 일치하는 경우에 사용

NON EQUI JOIN(비등가조인)
두 개의 테이블간에 컬럼값 들이 서로 정확하게 일치하지 않는 경우에 사용

OUTER JOIN (아우터 조인)
두 개의 테이블간에 JOIN을 걸었을 경우 JOIN의 조건을 만족하지 않는 경우에도 그 데이터들을 보고자 하는 경우에 (+)연산자를 사용하는 조인
EQUI JOIN 문장들의 한 가지 제약점은 그것들이 조인을 생성하려 하는 두개의 테이블의 두 개 컬럼에서 공통된 값이 없다면 테이블로부터 데이터를 반환하지 못한다는 것
정상적으로 조인 조건을 만족하지 못하는 행들을 보기 위해 OUTER-JOIN을 사용
OUTER JOIN의 연산자 : (+)
조인시킬 값이 없는 조인 측에 (+)를 위치 시킴
데이터가 없을 수도 있는 쪽 JOIN 컬럼에 (+)를 추가하여 OUTER JOIN이 가능
ex) 변경 이력이 없더라도 나머지 조인에 의한 결과행을 보여지도록 됨.

ANSI 표준 쿼리의 OUTER JOIN

  • LEFT OUTER JOIN
    이전의 JOIN ON 절에서 JOIN 앞에 LEFT / OUTER 를 붙여주면 됨
  • RIGHT OUTER JOIN

0개의 댓글