티스토리 뷰

DB/ORACLE

조인(join)

0bliviat3 2023. 9. 1. 15:14

오라클에서 조인은 역정규화위해 하는것으로

역정규화는 사용자의 편의를 위해 사용자가 원하는 데이터를 묶어서 보기위해 이루어진다.

 

조인은 여러가지가 있지만 현재 포스팅에서는 이너조인과 아우터조인만 다루도록한다.

 


1. 이너조인(inner join)

 

조인하려는 테이블의 겹치는 컬럼을 조건으로 조인을 진행,

조인 조건에 해당하는 튜플만을 가져오는 조인이다.

 

이 때 보통 겹치는 컬럼은 외래키를 통해 부모릴레이션과 자식 릴레이션의 관계로 참조관계에 있는 컬럼을 말한다.

 

// 이너조인

// 방법 1

select 검색할 컬럼
from 테이블1, 테이블2
where 겹치는 컬럼 = 겹치는 컬럼;

// 방법 2

select 검색할 컬럼
from 테이블1
inner join 테이블2 // inner 키워드 생략 가능
on 겹치는 컬럼 = 겹치는 컬럼;

 

2. 아우터 조인(outer join)

 

아우터 조인은 이너조인에서와 달리 조인에 참여하지 못하는 데이터도 같이 출력하고 싶을때 사용한다.

 

조인의 기준에 따라 left outer join, right outer join으로 나뉘는데

 

기준이 되는 테이블에서 조인 조건에 해당하지 않는 다른 튜플도 가져오고 싶은 경우 사용한다.

이때 조건에 해당하지 않는 튜플의 경우 데이터가 없는 컬럼은 null로 출력된다.

 

// outer join

// 방법 1

select 검색하려는 컬럼
from 테이블1, 테이블2
where 컬럼1 = 컬럼2(+); // (+)가 붙은 컬럼의 등호 반대편에 해당하는 테이블을 기준으로 아우터조인

// 방법2

// left outer join >> 테이블1 기준으로 아우터 조인
select 검색할 컬럼
from 테이블1
left outer join 테이블2 // outer 생략가능
on 컬럼1 = 컬럼2;

// right outer join >> 테이블2 기준으로 아우터 조인
select 검색할 컬럼
from 테이블1
right outer join 테이블2 // outer 생략가능
on 컬럼1 = 컬럼2;

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

시퀀스(sequence)  (0) 2023.09.02
ROWNUM  (0) 2023.09.01
무결성  (0) 2023.09.01
트리거  (0) 2023.08.31
외래키(foreign key)  (0) 2023.08.31
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함