Transcript PPT - DKE


집단함수란?
◦ 테이블의 통계적인 결과를 출력하는데 자주 사용
◦ 집단 연산자에는 합을 구하는 SUM, 평균을 구하는 AVG,
최대, 최소를 구하는 MIN/MAX, 개수를 구하는 COUNT,
표준 편차를 구하는 STDDEV, 분산을 구하는 VARIANCE
가 있다.
2
-

reservearmy 테이블의 튜플 수를 파악
◦ COUNT(*)는 튜플에 NULL 이 있어도 count
count(snum)을 수행하면 다음과 같
이 9가 결과 나옴.
즉, count(*)제외한 모든 집단함수
는 NULL 속성은 제외


학생정보 테이블을 검색하여 전체 학생들의 성적
의 총합과 평균을 알아 보도록 하자.
최대 성적과 최소 성적을 알아보도록 하자

하나이상의 컬럼을 기준으로 그룹화하고 각 그룹
별 통계정보를 얻고자 하는 경우
◦ 학생들의 학년별 평균 성적을 얻고자 할 경우

GROUP BY 절에 명시하지 않은 컬럼은 집단 연산
자와 같이 사용할 수 없다


GROUP BY 절을 사용할 때 WHERE 절을 사용하여
먼저 검색 대상을 한정할 수도 있다\
학번이 3번 이상이 학생들에 대하여서만 학년별
평균 성적을 알고 싶다

GROUP의 자격 요건을 지정하고 싶을 경우
◦ 학년별 학생수는 다음과 같이 파악할 수 있다.
◦ 학생수가 2 보다 큰 학년에서의 평균 성적을 알아보도록
하자

학과별 학생들의 평균 성적을 알아보자
◦ 학생들의 학과는 student테이블에 기록되어 있고 학생들
의 성적은 studentinfo에 저장되어 있다
◦ JOIN 이 필요

GROUP BY절에 기준이 되는 컬럼을 복수 개 기술

학년별, 학과별 평균 성적을 구하시오.
결과가 보기 어렵다.

ORDER BY를 통한 결과 정렬

ROLLUP 연산자
◦ GROUP BY 절의 그룹 조건에 따라 전체 행을 그룹화하고
각 그룹에 대해 부분합을 구하는 연산자
◦ GROUP BY 절에 칼럼의 수가 n개이면 ROLLUP 그룹핑
조합은 n+1개

CUBE 연산자
◦ ROLLUP에 의한 그룹 결과와 GROUP BY 절에 기술된 조
건에 따라 그룹 조합을 만드는 연산자
◦ GROUP BY 절에 칼럼의 수가 n개이면 CUBE 그룹핑 조합
은 2n개

학년별 성적의 총합을 구하는 데 있어서 ROLLUP
연산자와 CUBE 연산자를 적용해 보자
학과별, 학년 별 평균 성적을 ROLLUP 연산을 이용
 ROLLUP 연산의 결과로
각 학과별 평균성적
및 전체 평균 성적이
합산되어 나옴

CUBE 연산을 수행하게 되면
다음과 같이 ROLLUP에서 얻은
결과 이외에 학년별 평균도
추가하여 얻게 됨
