Sponsored By
















ㅁ. SUB QUERY(서브쿼리)는 두가지 종류가 있다.

>

1. INNER QUERY

2. OUTER QUERY

 

ㅁ. SUB QUERY(서브쿼리) 종류는 크게 4가지로 나뉜다.

>

1. SINGLE ROW

2. MULTI ROW

3. MUTI COLUMN

4. CORRELATED

 

 

ㅁ. 설명

>

1. SINGLE ROW

; SELECT해서 나온 결과의 행의 수가 한 행이며, 이 중에 한컬럼을 서브쿼리로 사용하는 경우

 

2. MULTI ROW

; SELECT해서 나온 결과의 행의 수가 한 행 이상인 경우 + IN, ANY, EXISTS 등의 연산시에만 가능.

 

3. MUTI COLUMN

; SELECT해서 나온 결과의 행이 두 열 이상을 가지는 경우

 

4. CORRELATED

; 일반적으로는 서브쿼리의 결과를 메인쿼리가 이용하지만, 

CORRELATED 서브쿼리는 서브쿼리가 메인쿼리의 값을 이용하고, 그렇게 구해진 서브쿼리의 값을 다시 메인쿼리가 이용하게 되는 방법

 

 

Q. TEMP 와 TDEPT 테이블을 이용하여 상위부서가 'CA0001'인 부서에 소속된 직원을 사번, 성명, 부서코드, 부서명, 상위부서코드, 상위부서명, 상위부서장코드, 상위부서장성명 순으로 나타내어라.

 

 

A.

>

SELECT A.EMP_ID,

A.EMP_NAME,

B.DEPT_CODE,

B.DEPT_NAME,

C.DEPT_CODE,

C.DEPT_NAME,

D.EMP_ID,

D.EMP_NAME

FROM TEMP A, TDEPT B, TDEPT C, TEMP D

WHERE B.DEPT_CODE = A.DEPT_CODE

AND C.DEPT_CODE = B.PARENT_DEPT

AND C.DEPT_CODE = 'CA0001'

AND D.EMP_ID = C.BOSS_ID ;

 

 

Q. TEMP 테이블을 이용해서 사번, 성명, 생일, 자신보다 생일이 빠른 사람의 수 를 나타내고 자신보다 생일이 빠른 사람의 수 순서대로 정렬하는 쿼리를 NON-EQUI JOIN 이면서, SELF JOIN OUTER JOIN 을 사용해서 만들어보자.

 

A.

>

SELECT A.EMP_ID 사번,

A.EMP_NAME 성명,

A.BIRTH_DATE 생일,

COUNT(B.BIRTH_DATE) '자신보다 생일이 빠른 사람의 수'

FROM TEMP A, TEMP B

WHERE B.BIRTH_DATE(+) < A.BIRTH_DATE

GROUP BY A.EMP_ID, A.EMP_NAME, A.BIRTH_DATE

ORDER BY COUNT(B.BIRTH_DATE) ;

 

 

ㅁ. 두개 이상의 테이블 조인시 한쪽테이블의 행에 대해 다른 쪽 테이블에 일치하는 행이 없더라도 다른쪽 테이블의 행을 NULL로 하여 행을 RETURN 하는 방법이다.

 

Q. 

1. 각 사번의 성명, 이름, SALARY, 연봉하한금액, 연봉상한금액을 보고자한다.

2. TEMP 와 EMP_LEVEL을 조인하여 결과를 보여주되, 

3. 연봉의 상하한이 등록되어 있지 않은 '수습' 사원은

4. 사번, 성명, SALARY 까지만 나오게 나타내어라.

 

A.

>

SELECT B.EMP_ID 사번,

B.EMP_NAME 성명,

B.SALARY 연봉,

A.FROM_SAL 하한,

A.TO_SAL 상한

FROM EMP_LEVEL A, TEMP B

WHERE B.LEV = A.LEV(+) ;

 

 

Q. 

1. TEMP 와 EMP_LEVEL 을 이용해 

2. EMP_LEVEL 의 과장 직급의 

3. 연봉 상한/하한 범위 내에 드는 직원의 

4. 사번과 성명, 직급, SALARY 를 나타내어라.

 

 

A. 

>

SELECT A.EMP_ID 사번,

A.EMP_NAME 성명,

A.LEV 직급,

A.SALARY 연봉

FROM TEMP A, EMP_LEVEL B

WHERE A.SALARY BETWEEN FROM_SAL

AND TO_SAL

AND B.LEV = '과장' ;

 

 



Sponsored By















+ Recent posts