파게로그
join 본문
wisoft.tistory.com/entry/database-sql-join-method
JOIN
- 여러 개의 릴레이션을 사용해서 새로운 릴레이션을 만드는 과정
- cartesian product를 바탕으로 생각하면 쉬움
INNER JOIN
공통 컬럼의 값이 같은 것을 추출
- EQUI JOIN
- 공통 컬럼의 동등 비교
- explicit notation
SELECT * FROM EMP INNER JOIN DEPT ON WHERE EMP.deptno = DEPT.deptno;
- implicit notation
SELECT * FROM EMP, DEPT WHERE EMP.deptno = DEPT.deptno; - NATURAL JOIN
- EQUI JOIN 결과에서 동일 칼럼의 중복을 제거
- explicit notation
SELECT * FROM EMP NATURAL JOIN DEPT; - cf. NON-EQUI JOIN(THETA JOIN)
- 공통 컬럼의 부등호 등 사용 비교 - CROSS JOIN
- Cartesian Product와 동일
- explicit notation
SELECT * FROM EMP CROSS JOIN DEPT
- implicit notation
SELECT * FROM EMP, DEPT - SELF JOIN
- 자가 조인. 같은 테이블 내에서 데이터를 추출
- explicit notation
SELECT E.ename, E.age, E.salary, D.deptname FROM EMP E INNER JOIN DEPT D ON E.deptno = D.deptno;
- implicit notation
SELECT E.ename, E.age, E.salary, D.deptname FROM EMP E, DEPT D WHERE E.deptno = D.deptno;
OUTER JOIN
필연적으로 NULL값이 발생한다
- FULL OUTER JOIN
- 두 테이블 중 한 쪽 테이블에만 존재하는 데이터를 포함 - LEFT OUTER JOIN
- 왼쪽 테이블에 존재하는 데이터는 모두 추출(오른쪽 테이블의 속성에는 null) - RIGHT OUTER JOIN
순수관계연산자
---
일반집합연산자(칼럼의 수나 칼럼의 데이터 형식이 모두 일치해야 함)
UNION - 합집합, 중복 제거, SORT 유발
SELECT DEPTNO FROM EMP UNION SELECT DEPTNO FROM EMP;
UNION ALL - 중복 제거 x, SORT 유발 x
SELECT DEPTNO FROM EMP UNION ALL SELECT DEPTNO FROM EMP:
MINUS
...
'콤퓨타 왕기초 > SQLD/JDBC/Oracle DB' 카테고리의 다른 글
subquery (0) | 2021.03.21 |
---|---|
계층형 조회(CONNECT BY) (0) | 2021.03.21 |
TCL(Transaction Control Language) (0) | 2021.03.18 |
DCL(Data Control Language) (0) | 2021.03.18 |
WITH 구문 (0) | 2021.03.18 |
Comments