본문 바로가기
데이터베이스

MySQL 문법 정리 2. SELECT문 (GROUP BY, HAVING, 집계함수)

by 호놀롤루 2022. 4. 16.

1. 개요

GROUP BY 는 데이터를 그룹으로 묶어주는 절이다.

집계함수(Aggregate Function)와 함께 사용하면 효과적이다.

 

 

 

2. 사용법

2-1. GROUP BY

GROUP BY 절은 데이터를 가져올 때, 특정 열을 묶어서 가져올 수 있다.

여기서 사용된 집계함수인 AVG는 지정된 열의 평균을 구한다.

그리고 GROUP BY를 통해, 어떤 그룹을 기준으로 평균을 구할지 지정한 것이다.

 

위에서 사용한 명령어는 deptStudent라는 테이블에서 학과와 평균점수를 가져오는데, 평균점수는 학과를
기준으로 가져온다는 뜻이다.

 

as(별명, Alias)를 사용해서 좀 더 편하게 볼 수 있다.

 

 

2-2. 집계함수

함수명 설명
AVG() 평균값 구하기
MIN() 최소값 구하기
MAX() 최대값 구하기
COUNT() 행의 개수 구하기 (데이터 몇 줄 있는지)
COUNT(DISTINCT) 행의 개수 구하기 (중복된 건 1개로 취급)
STDEV() 표준편차 구하기
VAR_SAMP() 분산 구하기

등이 있다. 필요할 때 적절히 쓰면 된다.

 

 

2-3. HAVING 

WHERE와 비슷한 개념이지만, 집계함수의 조건을 제한하는 것이다.

HAVING절은 반드시 GROUP BY절 뒤에 나와야 한다.

이런 식으로 집계함수인 AVG(score)에 70이상이라는 조건을 달아서 출력할 수 있다.

 

 

 

댓글