일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- tomcat
- 예제
- s4a
- 잡토이 메이킹 코딩 학원
- 코딩
- 강좌
- 아두이노
- Spring Security
- html5
- 오라클
- 시작하기
- librecad
- 운정
- 파주
- Android
- jsp
- oracle
- 리브레캐드
- 설치
- 안드로이드
- 라즈베리파이
- Unity
- mysql
- 스크래치
- 유니티
- 설정
- 톰캣
- 잡토이
- jobtoy
- MSSQL
- Today
- Total
랩제이
JOIN 본문
- EQUIJOIN
- NON EQUIJOIN
사원 조회시에 급여등급이 나오도록 조인한다.
SELECT e.empno, e.ename, e.sal, s.grade FROM emp e, salgrade s
WHERE e.sal BETWEEN s.losal AND s.hisal;
- OUTER JOIN
dept에 새로운 부서가 생겼는데 EQUIJOIN 했을 경우는 조회가 안된다.
emp에 사원이 배치 안 되었더라도 부서는 나오도록 할 경우에 사용한다.
정보가 부족한 쪽에 (+)를 붙여서 사용한다.
IN 연산자, OR 연산자 사용 못한다.
SELECT e.empno, e.ename, d.deptno, d.dname FROM emp e, dept d
WHERE e.deptno(+) = d.deptno
- SELF JOIN
자신과 JOIN 해서 사용한다.
MGR 내 상관이 누구다를 가리킨다
자신에게 상관이 있는 사원 테이블, 자신에게 부하가 있는 상관 테이블을 조인한다.
이 경우에 SELF JOIN을 이용한다.
SELECT w.ename worker, m.ename manger
FROM emp w, emp m
WHERE w.mgr = m.empno
자기위에 상관이 하나도 없는 사람도조회하기 위해서 WHERE w.mgr = m.empno(+) 사용
SELECT w.ename worker, m.ename manger
FROM emp w, emp m
WHERE w.mgr = m.empno(+)
- Cartesian Product
조인 조건이 생략되거나 잘못된 경우 발생한다
'database > oracle' 카테고리의 다른 글
TABLESPACE 이해 (0) | 2012.03.21 |
---|---|
Sub Query (0) | 2012.03.21 |
그룹 결과 제한 - HAVING 사용 (0) | 2012.03.21 |
오라클에서 쿼리 실행결과 저장하기 방법 (0) | 2012.03.21 |
SQL Plus 기본 명령 (0) | 2012.03.21 |