구름조아

Group by, Having, 집계함수 본문

SQLD자격증공부/SQL기본

Group by, Having, 집계함수

김옹희 2023. 5. 8. 15:18

1. Group by

  • Group by는 집합(테이블) 내 에서 하나 혹은 여러행을 그룹화하여 합계, 평균, max, min 등 집계함수를 이용하여 계산할 수 있는 기능이다.
  • Having 절을 이용하여 group by 된 상태에서 조건을 추가 할 수 있다.
select do, avg(budget_value) as 예산평균,
sum(budget_value) as 예산합계
from budget
group by do;

2. Having

  • Having은 group by와 같이 다니는 조건절 이다.
  • Where절은 group by 하기 전 조건에 해당하고, having은 group by 연산 이후 조건이다.
select do, avg(budget_value) as 예산평균,
sum(budget_value) as 예산합계
from budget
group by do
having avg(budget_value) > 50000;

3. 집계함수

  • count
select do, count(*) as cnt
from budget
group by do;
  • sum / avg
select do, avg(budget_value) as 예산평균,
sum(budget_value) as 예산합계
from budget
group by do;
  • min / max
select do, min(budget_value) as min,
max(budget_value) as max
from budget
group by do;