개인공부

데이터베이스 - 조인 본문

데이터베이스

데이터베이스 - 조인

풀스택개발 2018. 4. 19. 01:30

조인이란


 관계형 데이터베이스에서는 테이블 간의 관계가 중요하기 때문에 하나 이상의 테이블을 빈번히 결합하여 사용한다.

한 개 이상의 테이블에서 데이터를 조회하기 위해 사용되는 것을 조인이라고 한다.




조인의 종류


Equi Join : 동일 칼럼을 기준으로 조인합니다.

Non-Equi Join : 동일 칼럼이 없이 다른 조건을 사용하여 조인합니다.

Outer Join : 조인 조건에 만족하지 않는 행도 나타낸다.

Self Join : 한 테이블 내에서 조인합니다.





ANSI JOIN


 지금까지는 살펴본 조인문은 SQL/86에서 정의된 조인 구문 현재는 ANSI(미국 표준 협회)에서 제시한 표준 기능을 준수



ANSI Inner Join


USING을 이용한 조인 조건 지정하기


 두 테이블에 각각 조인을 정의한 컬럼의 이름이 동일하다면 USING 절에서 조인할 컬럼을 지정하여 구문을 더 간단하게 표현할 수 있습니다.


 SELECT * FROM table1 [INNER] JOIN table2 USING (공통컬럼)



ON EMP.DEPTNO=DEPT.DEPTNO의 경우 EMPDEPTDEPTNO 라는 같은 이름의 컬럼이 있기 때문에 다음과 같이 간단하게 조인문을 기술할 수 있습니다.


 SELECT EMP.ENAME, DEPT.DNAME FROM EMP INNER JOIN DEPT USING (DEPTNO);   

--USING절의 컬럼은 테이블이름 없이 컬럼명만 사용해야 합니다.



두 테이블에 각각 조인을 정의한 컬럼의 이름이 동일하다면 USING 절에서 조인할 컬럼을 지정하여 구문을 더 간단하게 표현할 수 있습니다.SELECT * FROM table1 NATURAL JOIN table2




ANSI Outer Join


 새로운 ANSI 구문에서 Outer JoinLEFT Outer Join, RIGHT Outer Join 그리고 FULL Outer Join 세 가지 타입의 조인을 제공합니다.

SELECT * FROM table1 [LEFT | RIGHT | FULL] Outer Join table2


Outer Join은 이미 설명했듯이 어느 한쪽 테이블에는 해당하는 데이터가 존재하는데 다른 쪽 테이블에는 데이터가 존재하지 않을 경우 그 데이터가 출력되지 않는 문제점을 해결하기 위해 사용하는 조인 기법입니다.





Comments