오라클10g SCOTT 계정의 기본 EMP 테이블을 이용한것입니다..
자기 부서의 평균 월급보다 더 많은 월급을 받는 사원들의 이름, 월급, 부서번호, 부서별 평균월급을 구하는건데요..
SELECT a.ENAME, a.DEPTNO, a.SAL, b.avg_sal
FROM EMP a, (SELECT AVG(SAL) avg_sal, DEPTNO
FROM EMP
GROUP BY DEPTNO) b
WHERE a.DEPTNO = b.DEPTNO
AND a.SAL > ANY (SELECT AVG(b.SAL)
FROM EMP b
GROUP BY b.DEPTNO)
ORDER BY a.DEPTNO
을 돌리면 아래와 같이 출력됩니다..
ENAME DEPTNO SAL avg_sal
CLARK 10 2450 2916.666666666666666666666666666666666667
KING 10 5000 2916.666666666666666666666666666666666667
JONES 20 2975 2175
SCOTT 20 3000 2175
FORD 20 3000 2175
ALLEN 30 1600 1566.666666666666666666666666666666666667
BLAKE 30 2850 1566.666666666666666666666666666666666667
왜 맨윗칸(빨간색부분)이 출력이 되는지 모르겠어요..
'CLARK'의 월급은 부서 평균월급보다 작은데 출력이 되어서요..ㅠㅠ
이제 오라클 시작하는 입문자라 친절한 설명 부탁드려요..^^:;