ORACLE DB

▶JOIN◀

chojdsj 2023. 5. 25. 19:34
728x90
JOIN

 

- 하나 이상의 테이블에서 데이터를 조회하기 위해 사용

 

- 수행 결과는 하나의 RESULT SET으로 나옴 

 

- 원하는 정보를 테이블에서 조회하려면 한 개 이상의 테이블에서 데이터를 읽어와야 되는 경우가 많다.

이 때, 테이블간 관계를 맺기위한 연결고리 역할이 필요한데, 두 테이블에서 같은 데이터를 저장하는 컬럼이 연결고리가 됨.

 

 

 

 

내부 조인( INNER JOIN)

 

- 연결되는 컬럼의 값이 일치하는 행들만 조인됨 (== 일치하는 값이 없는 행은 조인에서 제외됨)

 

- 작성방법은 크게 ANSI 구문과 오라클 구문으로 나뉘고 ANSI에서 USING과 ON을 쓰는 방법으로 나뉜다.

 

 

 

** ANSI 표준 구문 **


- ANSI는 미국 국립 표준 협회를 뜻함 , 미국의 산업표준을 제정하는 민간단체로
국제표준화기구 ISO에 가입되어있다. ANSI에서 제정한 표준을 ANSI라고 하고
여기서 제정한 표준 중에서 가장 유명한 것이 ASCII코드이다.

 

 

** 오라클 전용 구문 **


-  FROM절에 쉼표(,)로 구분하여 합치게 될 테이블명을 기술하고, WHERE절에 합치기에 사용할 컬럼명을 명시한다. 

 

 

** 연결에 사용할 두 컬럼명이 다를경우 **

 

 

 

 

** 연결에 사용할 두 컬럼명이 같을경우 **

 

 

 

 

외부 조인(OUTER JOIN)

 

- 두 테이블의 지정하는 컬럼값이 일치하지 않는 행도 조인에 포함을 시킴 

 

- 반드시 OUTER JOIN 임을 명시해야 한다. 

 

 

 

 

** LEFT(OUTER) JOIN **

 

- 합치기에 사용한 두 테이블 중 왼편에 기술된 테이블의 컬럼수를 기준으로 JOIN

 

 

 

 

** RIGHT(OUTER) JOIN **

 

- 합치기에 사용한 두 테이블 중 오른편에 기술된 테이블의 컬럼수를 기준으로 JOIN

 

 

 

 

 

SELF JOIN

 

- 같은 테이블을 조인, 자기 자신과 조인을 맺음 --> 똑같은 테이블 두개가 조인

 

 

 

 

다중 JOIN

 

- N개의 테이블을 조회할 때 사용(순서 중요)

 

--> SELECT절에 각각에 맞는 테이블 순서대로 조인을 해야한다. 순서가 틀릴시 오류발생

 

 

 

 

 

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

▶TCL◀  (0) 2023.05.25
▶DML◀  (0) 2023.05.25
▶GROUP BY◀  (0) 2023.05.25
▶함수◀  (1) 2023.05.18
▶SELECT◀  (0) 2023.05.18