본문 바로가기
개발일지/SQL

SQL 기초 12 집계함수 group by, having

by 다니엘의 개발 이야기 2022. 8. 23.
320x100

# 집계함수

## groupby

행을 그룹으로 묶어서 그룹별로 집계 처리 하기가 가능하다.

 

예시

USE database;

SELECT name, MAX (score) AS high, MIN (score) AS low

FROM table GROUP BY name;

 

출력값으로는

name high low

이렇게 되어서 필드값이 나열된다.


#2 HAVING

 

SELECT 에서 조건을 사용할때는 WHERE를 쓰지만

GROUP BY 에서 조건을 사용할 때는 HAVING을 사용한다.

* GROUP BY 에서는 WHERE 절 사용이 불가능 하다.

 

예시 1

SELECT price, COUNT (title) FROM table GROUP BY price

HAVING COUNT(title) = 1;

 

결과물로는

price COUNT(title)

 

예시 2

USE database;

SELECT name, SUM(score) AS over300 FROM table

GROUP BY name HAVING (sum(score) >= 300);

 

결과물

name over300

300x250