강의_3장_GROUP 함수.pdf

20230425170759.png

실습

SELECT 
--행이 몇개인지 출력
    COUNT(*) "COUNT ALL"
    ,COUNT(EMPNO) "COUNT EMPNO"
--NULL값은 세지 않음
    ,COUNT(COMM) "COUNT EMPNO"
--COMM행 합계
    ,SUM(COMM) "SUM COMM"
--COMM행 평균, 4개 행만 가지고 평균을 냄
    ,AVG(COMM) "AVG COMM"
--NULL값을 0으로 하고 평균을 내면 다르게 나옴
    ,AVG(NVL(COMM,0)) "AVG(NVL(COMMM,0))"
    ,MAX(COMM) "MAX COMM"
    ,MIN(COMM) "MIN COMM"
FROM EMP;

20230425171623.png

SELECT 
--MAX: 최근 날짜, MIN: 가장 과거 날짜
    MAX(HIREDATE)
    ,MIN(HIREDATE) "MIN(HIREDATE)"
--표준편차
    ,STDDEV(SAL) "STD"
--분산
    ,VARIANCE(SAL) "VAR"
FROM EMP;

20230425171910.png

SELECT
--그룹함수는 그룹함수 끼리만 사용 가능
--GROUP BY 사용 시 함께 사용 가능
    DEPTNO
    ,AVG(NVL(SAL,0)) "AVG"
FROM EMP
--부서별 그룹
GROUP BY DEPTNO;

20230425173709.png

SELECT
--그룹함수는 그룹함수 끼리만 사용 가능
--GROUP BY 사용 시 함께 사용 가능
    DEPTNO
    ,AVG(NVL(SAL,0)) "AVG"
FROM EMP
--부서별 그룹
GROUP BY DEPTNO;

SELECT DEPTNO
    ,JOB "J"
    ,AVG(SAL)
    ,AVG(SAL) "AVG_SAL"
FROM EMP
--GROUP BY는 그룹함수가 아닌 컬럼을 사용해야 오류가 안남
GROUP BY DEPTNO,JOB
--별칭불가
--GROUP BY DEPTNO,J
ORDER BY DEPTNO;

20230425174902.png