검색결과 리스트
글
JOIN
JOIN 이란?
하나 이상의 테이블로부터 Data를 질의하기 위해서 사용됩니다.
Join조건은 WHERE절에서 기술합니다사용 형식 :
SQL> SELECT table1.column, table2.column ….
2> FROM table1, table2,….
3> WHERE join조건문;
종류
Equijoin Join하고자 하는 두개의 테이블에 같은 컬럼이 있을 때 사용 P.K.와 F.K.와의 관계에서 얻어짐
Non-Equijoin Join하고자 하는 테이블이 직접적 관계가 없는 경우 WHERE절에서 ‘=’가 아닌 다른 연산자를 통해서 얻어짐
Outer join 관계가 있는 테이블을 질의할 경우 결과에 나타나지 않는 행들까지 얻고자 할 때
Self join 테이블 자체내에서 조인할 경우
-
Equijoin
보통 P.K.와 F.K. 관계가 있는 테이블에서 ‘=’ 연산자를 통해서 서로 다른 두개의 테이블을 조인합니다.
SQL> SELECT table1.column, table2.column ….
2> FROM table1, table2,….
3> WHERE table1.column= table2.column ;
SQL> select dept.deptno, emp.empno
2> from dept, emp
3> where dept.deptno=emp.deptno
4> order by 1;
-
Column과 Table에서의 Alias
SQL> select d.deptno, e.empno
2> from dept d, emp e
3> where d.deptno=e.deptno;
- WHERE절에서의 추가조건
WHERE절에서의 조건문은 하나 이상 기술할 수 있습니다.
SQL> SELECT table1.column, table2.column , tacle3.column….
2> FROM table1, table2, table3….
3> WHERE table1.column= table2.column
4> AND table2.column=table3.column
5> OR …………………………………..;
-
Non-Equijoin
조인하고자 하는 테이블에 직접적인 관계가 없는 상황일 때 WHERE절에서 ‘=’가 아닌 다른 연산자를 통해서 검색을 하는 경우.
SQL> SELECT e.empno, e.ename, e.sal, g.grade
2> FROM emp e, salgrade g
3> WHERE e.sal BETWEEN g.losal AND g.hisal;
-
Outer Join
Equijoin과 비슷하나 결과는 만족하는 행뿐만 아니라 만족하지 않은 행까지도 보기 위해서 사용하는
조인방법을 말합니다.
SQL> select e.deptno, e.ename, d.dname
2> from emp e, dept d
3> where e.deptno(+)=d.deptno;
-
Self Join
Equijoin과 비슷하나 F.K.가 참조하는 P.K.가 같은 테이블에 있을 때 사용하는 방법입니다
SQL> select DISTINCT m.mgr, e.ename
2> fro emp e, emp m
3> where e.empno=m.mgr;
[출처] oracle JOIN|작성자 빠드루가
'먹고살기 > Oracle' 카테고리의 다른 글
Database Link사용법 (0) | 2011.04.05 |
---|---|
사용자 세션의 강제 종료 (0) | 2011.04.05 |
oracle exp/imp (0) | 2011.04.05 |
Tablespace (0) | 2011.03.30 |
OCP (0) | 2011.03.18 |
RECENT COMMENT