JOIN
- 데이터베이스에서 여러 테이블의 데이터가 필요한 경우 JOIN을 사용한다.
- 관계형 데이터베이스에서 가장 기본적이고 가장 중요한 기능으로 어떤 테이블을 기준으로 다른 테이블에 있는 ROW를 찾아오는 것이다.
- 관계형 데이터베이스에서 서로 독립적인 데이터들간의 조인을 이용하여 필요 시 원하는 다양한 정보를 참조한다.
- 해당 컬럼에 존재하는 공통 값, 일반적으로 기본키 및 외래키를 JOIN 조건으로 사용하여 한 테이블의 행을 다른 테이블의 행에 JOIN할 수 있다.
- 기본키, 외래키의 관계 없이도 논리적인 값들의 연관만으로 JOIN 작업을 처리할 수 있다.
카티시안 곱
- JOIN 조건을 생략한 경우, JOIN 조건이 부적합한 경우 카티시안 곱이 생성된다.
- 첫 번째 테이블의 모든 행이 두 번째 테이블의 모든 행에 JOIN되어 처리된다.
- 카티시안 곱이 생성되지 않도록 하려면 WHERE절에 항상 유효한 JOIN 조건을 지정해야 한다.
OUTER JOIN
- JOIN 조건을 만족하지 못하는 경우에도 모든 행들을 다 보고자 하는 경우에 사용하는 JOIN이다.
- (+) 연산자를 사용한다.
- 어느 한쪽 테이블이 기준이 되어 다른 쪽 테이블이 연결되는 조건 만족에 상관없이 기준이 되는 테이블은 무조건 추출된다.
- ex)
1
2
3
4
5
6
7
8
9
|
SELECT
E.empno,
E.ename,
E.job,
E.deptno AS E_DEPTNO,
D.deptno AS D_DEPTNO,
D.dname
FROM dept D, emp E
WHERE D.deptno = E.deptno(+);
|
오늘의 한 줄 : 암시적 조인은 폐기 되었는데 강의에서 언급은 안해주고 계속 암시적 조인을 쓴다. ㅜㅜ
출처 : SK 동반성장 아카데미, 비전공자를 위한 SQL 입문, 「조인 처리과정 이해 및 기본 조인 문장 」
'공부 > SQL' 카테고리의 다른 글
[SQL] 서브 쿼리 (0) | 2019.12.04 |
---|---|
[SQL] 조인 문장 및 집합 연산자 (0) | 2019.12.04 |
[SQL] 윈도우 함수 (0) | 2019.12.03 |
[SQL] 그룹 함수 (0) | 2019.12.03 |
[SQL] 일반 함수 (0) | 2019.12.03 |