-
이퀴조인 (EQUI JOIN) 아우터 조인(Outer Join)SQL 2020. 4. 5. 18:19반응형
1. EQUI JOIN 조인
- EQUI JOIN은 각 테이블간에 공통된 걸럼(조건)으로 데이터를 합쳐 표현하는 것이다.
ANSI 표준 조인 (JOIN절을 이용한 명시적 조인)
JOIN절을 명시적으로 선언하여 질의문을 작성할 수 도 있다.
SELECT 컬럼이름1, 컬럼이름2, ㆍㆍㆍFROM 테이블명1JOIN 테이블명2ON 테이블명1.컬럼명 = 테이블명2.컬럼명;아래와 같이 작성이 가능하다.
SELECT 컬럼이름1, 컬럼이름2, ㆍㆍㆍFROM 테이블명1, 테이블명2WHERE 테이블명1.컬럼명 = 테이블명2.컬럼명;2. 아우터 조인 (LEFT, RIGHT)
EQUI JOIN 문장들의 한 가지 제약점은 그것들이 조인을 생성하려 하는 두개의 테이블의
두개 컬럼에서 공통된 값이 없다면 테이블로부터 데이터를 반환하지 못한다는 것이다.
- 정상적으로 저인 조건을 만족하지 못하는 행들을 보기위해 OUTER JOIN을 사용한다.
OUTER JOIN 연산자는 (+)이다. 간단하게 말하여 데이터가 없을 수도 있는 쪽 JOIN 컬럼에 (+)를 추가하여 OUTER JOIN이 가능하다.
즉, 테이블1 RIGHT OUTER JOIN 테이블2 할 경우 테이블1,테이블2 간 조인 조건이 맞지 않는 테이블1과 테이블2의 레코드 중 테이블2 레코드는 무조건 결과값에 포함되어 나오는 것입니다. 오른쪽 테이블은 무조건 나오는 것이지요.
- ORACLE에서의 LEFT OUTER조인
SELECT 테이블1.아이디FROM 테이블1, 테이블2WHERE 테이블1.아이디 = 테이블2.아이디(+)- ANSI 표준 쿼리의 LEFT OUTER JOIN
SELECT 테이블1.아이디FROM 테이블1LEFT OUTER JOIN 테이블2ON 테이블1.아이디 = 테이블2.아이디LEFT는 왼쪽테이블 기준, RIGHT는 오른쪽 테이블 기준이라고 생각하면 된다.
왼쪽 테이블의 조건은 ON 영역에
기준이 되는 테이블의 조건은 WHERE 영역에 정의한다.
반응형'SQL' 카테고리의 다른 글
MYSQL D-DAY 디데이 계산하기 (0) 2020.04.17 스칼라 서브쿼리(Scala Subquery)란 ? (0) 2020.04.05 [오라클] ORACLE VIEW(뷰) 사용법 및 예제 (0) 2019.10.13 [오라클] WITH문 사용법 및 예제 (0) 2019.10.06 오라클 UNION, INTERSECT, MINUS (0) 2019.09.29