Please enable JavaScript.
Coggle requires JavaScript to display documents.
조인 ((inline view, from절 안에서 사용되는 서브쿼리, SELECT
FROM (SELECT FROM emp)
…
조인
-
-
-
SELECT e.ename, e.deptno,d.dname
FROM EMP e, DEPT d
WHERE e.deptno=d.deptno;
-
-
공통 칼럼이 없는 경우, ‘=’를 제외한 연산자를 이용하여 특정 범위를
지정함으로 만드는 조인
select a1.empno, a1.ename, a2.grade
from emp a1, salgrade a2
where a1.sal between a2.losal and a2.hisal
-
동일 테이블 내에서의 조인, From절에서 동일 테이블이 두 번이상 등장함
SELECT e1.ename 상사
,e2.ename 부하직원
FROM EMP e1, EMP e2
WHERE e2.mgr=e1.empno;
-
-
-
SELECT e.empno ,
d.dname ,
d.deptno
FROM emp e , dept d
WHERE e.deptno = d.deptno(+);
// dept테이블이 가지고있는 detpno의 값 10~40 범위를 벗어난 50과 null값을 emp 테이블의 deptno에 추가 함
-
-
-
조인 조건이 정확히 일치하는 경우, 조인 조건에 =를 이용하여 사용한다.
SELECT ename,d.dname
FROM EMP e, DEPT d
WHERE e.deptno=d.deptno;
-
Q 서브쿼리를 사용하는 이유는 무엇인가요?
O 쿼리문안에 쿼리문이 있는 것을 서브쿼리라고 하며,
알려지지 않은 기준을 이용한 검색을 하기 위해 사용한다.
SELECT e1.ename, e1.comm
FROM EMP e1
WHERE e1.comm<
(SELECT AVG(comm)
FROM EMP e2
WHERE e1.deptno = e2.deptno
GROUP BY deptno );
-
-
서브쿼리에 쓰여지는 칼럼이 2개 이상인 경우
IN, OR를사용한다.
SELECT deptno,ename
FROM EMP
WHERE (deptno, ename) IN ((20, 'SMITH'), (30, 'ALLEN'));
-
-
서브쿼리 문장에서 단 하나의 행과 열을 검색하는 경우, 단일 행 연산자( <=, <, >, <=, >=, !=)를 사용
SELECT ord_id,QUANTITY_SHIPPED
FROM S_ITEM
WHERE QUANTITY_SHIPPED > (SELECT QUANTITY_SHIPPED
FROM S_ITEM
WHERE QUANTITY_SHIPPED=100);
-
-
-
여러행이 입력되어 하나의 행으로 출력된다.
다중 행 연산자(IN, ANY, ALL)를 사용한다..
SELECT ename, sal
FROM emp
WHERE sal < all(SELECT AVG(sal)
FROM emp)
-
-
메인쿼리의 값을 서브쿼리가 사용,
서브쿼리의 값을받아서 메인쿼리가 계산한다
SELECT e1.ename, e1.sal
FROM EMP e1
WHERE sal < (SELECT AVG(e2.sal)
FROM EMP e2
WHERE e2.deptno=e1.deptno )
-
-