본문 바로가기

빅데이터과정/SQL

#5_140607_분석함수

728x90

# 분석함수



문제193. 사원이름월급사원 테이블의 최대월급사원 테이블의 최소월급사원 테이블의 평균월급을 출력하시오

SELECT ename, sal,
             (SELECT MAX(sal) FROM emp) 최대월급,
        (SELECT MIN(sal) FROM emp) 최소월급,
        (SELECT AVG(sal) FROM emp) 평균월급
FROM EMP;

- Select 절의 서브쿼리 사용 : scalar subquery


# 분석함수를 이용하면


SELECT ename, sal, MAX(sal) OVER () 최대월급,
                           MIN(sal) OVER () 최소월급,
                  AVG(sal) OVER () 평균월급
FROM EMP;





문제202. 이름, 월급, 부서위치, 자기가 속한 부서위치의 최대월급을, 자기가 속한 부서위치의 최소월급,자기가 속한 부서위치의 평균월급을 출력하는데 평균월급을 출력할 때는 소수점이하는 안나오게 반올림하시오

SELECT e.ename, e.sal, d.loc, MAX(sal) OVER(PARTITION BY d.loc) 최대월급,
                                        MIN(sal) OVER(PARTITION BY d.loc) 최소월급,
                           ROUND(AVG(sal) OVER(PARTITION BY d.loc),0) 평균월급
FROM EMP E, DEPT D
WHERE e.deptno=d.deptno;




'빅데이터과정 > SQL ' 카테고리의 다른 글

#6_140621_제약(constraint)  (0) 2014.07.10
#6_140621_테이블 및 컬럼 이름 지정규칙  (0) 2014.07.10
#5_140607_일일과제(crime)  (0) 2014.07.10
#4_140531_null에 대해서  (0) 2014.07.10
#4_140531_140621_DDL  (0) 2014.07.10