본문 바로가기

DB/OracleSQL

조인(JOIN)문

07.07 TIL

 

JOIN을 사용하면 다중의 테이블에서 data를 가져올 수 있다.
미국 국가 표준 협회 ANSI에서 제공하는 표준 문법인 ANSI Join과 Oracle 자체 문법인 Oracle Join이 있다.

 

JOIN의 종류
Equi Join (등가조인) - 두 개의 테이블 값이 정확히 일치하는 경우에 사용
Nonequi Join (비등가조인) - 두 개의 테이블 값이 정확히 일치하지 않는 경우에 사용
Natural Join - 동일한 이름의 모든 컬럼을 기반으로 equi join
Inner Join - 두 개의 테이블 값이 일치하는 행만 반환하는 경우에 사용
Outer Join - Innerjoin 결과값과 함께 일치하지 않는 행도 반환하는 경우에 사용
Cross Join - 두 개의 테이블을 join할 때 모든 경우의 레코드를 select
Self Join - 같은 컬럼의 행들을 join할 경우에 사용

 

Cartesian Product

Cartesian Product (데카르트곱 : A와 B의 곱집합 합 AxB)
join 조건이 생략된 경우
join 조건이 잘못된 경우
한 테이블의 모든 행이 다른 테이블 모든 행에 join 된다.
다수의 행을 생성하므로 유용하지 않다.

 

3-WAY Join (ANSI Join)
3-WAY Join (Oracle Join)

 

'DB > OracleSQL' 카테고리의 다른 글

서브쿼리(Subquery)  (0) 2021.07.13
복습문제 - 조인(JOIN)문  (0) 2021.07.13
복습문제 - 그룹행 함수  (0) 2021.07.12
복습문제 - 단일행 함수  (0) 2021.07.12
Quiz  (0) 2021.07.11