오늘은 그룹 함수에 대해서 알아보겠습니다.

 

● 그룹 함수란 무엇일까요?

: 그룹 함수는 하나 이상의  테이블 값(행)을  그룹으로 묶어 연산을 통해서  합계, 평균 최대값 등  하나의 결과로  나타낼 수 있도록 도와주는 함수의 종류 입니다.

 

● 그룹 함수 종류

 

 

예시를 통해서 각 함수들을 설명하겠습니다.

 

1) 합계 : sum() / 형식 : select sum(수치형 데이터가 들어있는 필드명) from 테이블명;

 

 

2) 카운트 : count()  / 형식 : select count(필드명) from 테이블명;

 

 

3) 평균 : avg() / 형식 : select avg(수치형 데이터가 들어있는 필드명) from 테이블명;

 

 

4) 최대값 : max() / 형식 : select max(수치형 데이터가 들어있는 필드명) from 테이블명;

 

 

5) 최소값 : min() / 형식 : select min(수치형 데이터가 들어있는 필드명) from 테이블명;

 

 

6) Group by 절

* Group by 절은 문제를 통해서 설명하겠습니다.

  

    Q) 직업별 급여 평균( select avg(sal) from emp; )

 

 

문제를 잘 푼거 같은데 오류가 나왔습니다. 왜 오류가 났을까요?

job이라는 테이블에는 14개의 값이 출력 되고, avg(sal)은 1개의 값이 출력 되기 때문입니다.

database는 정형의 데이터(테이블)로 되어 있기 때문에 출력하는 값의 개수를 맞춰주어야 합니다. 

이런 상황에서 Group by 절을 통해서 문제를 해결할 수 있습니다.

 

group by절을 통해서 결과 값이 5개의 그룹의 평균 급여로 정형화된 형식으로 출력 되었습니다.

 

7) Having 절 : group by 절을 having 절을 통해서 추가적 조건을 가능하게 해줍니다

 

*  Having 절도 문제를 통해서 설명하겠습니다. 

 

     Q) 직업별 급여 평균(단, 급여 평균 2000이상 직업)

 

여기 까지는 앞에 group by 절을 통해서 급여의 평균을 구하는 것이 같습니다.

이제 추가 적인 조건인 2000이상인 급여를 추가해 보겠습니다.

 

 

 

 

 

+ Recent posts