[SQL] #05 SQL 집계 함수(count, sum, avg, max, min)와 Group by

2025. 7. 27. 16:00·Database/SQL
반응형

 

 

안녕하세요 토스트데브입니다.
이번 글에서는 SQL의 집계함수와 Group by에 대해 알아보도록 할게요!

데이터를 요약하고 그룹별로 분석하는 방법

 

 

 

✅ 집계 함수란?

집계 함수(Aggregate Functions)는 여러 행의 데이터를 모아서 하나의 결과값으로 요약해주는 SQL 함수입니다.

예: “회원 수가 몇 명이지?”, “총 판매 금액은 얼마야?”

 

📌 주요 집계 함수 목록

함수 설명 예시
COUNT() 행의 개수 세기 COUNT(*) → 총 행 수
SUM() 합계 구하기 SUM(price)
AVG() 평균 구하기 AVG(score)
MAX() 최대값 구하기 MAX(salary)
MIN() 최소값 구하기 MIN(age)

 

📌 예시

SELECT COUNT(*) FROM users;
SELECT AVG(score) FROM exams;
SELECT SUM(amount) FROM orders;

 

 

✅ GROUP BY란?

GROUP BY는 같은 값을 가진 데이터를 묶어서(grouping) 그룹별로 집계 함수의 결과를 구할 때 사용합니다.

 

📌 기본 문법

SELECT 그룹기준컬럼, 집계함수
FROM 테이블명
GROUP BY 그룹기준컬럼;

 

🎯 예제 1: 부서별 직원 수

SELECT department, COUNT(*) AS 직원수
FROM employees
GROUP BY department;

➡️ 부서별로 몇 명의 직원이 있는지 확인

 

🎯 예제 2: 카테고리별 평균 가격

SELECT category, AVG(price) AS 평균가격
FROM products
GROUP BY category;

➡️ 각 상품 카테고리별 평균 가격 구하기

 

🎯 예제 3: 조건이 있는 그룹화 (WHERE + GROUP BY)

SELECT region, SUM(sales) AS 총매출
FROM stores
WHERE year = 2025
GROUP BY region;

➡️ 2025년 기준으로 지역별 총 매출

 

🎯 예제 4: 그룹 조건 필터링 (HAVING)

SELECT department, AVG(salary) AS 평균급여
FROM employees
GROUP BY department
HAVING AVG(salary) > 3000;

➡️ 평균 급여가 3000 이상인 부서만 조회
📌 HAVING은 GROUP BY 이후의 조건 필터링에 사용됩니다.

 

 

📝 마무리

  • GROUP BY와 집계 함수는 대량의 데이터를 요약하고 분석하는 데 매우 유용합니다.
  • 실무에서는 매출 분석, 사용자 통계, 부서별 성과 등 보고서 자동화의 핵심이죠!
  • HAVING은 WHERE 대신 그룹화된 결과를 필터링할 때 사용된다는 점, 꼭 기억하세요.

 

 

#SQL #SQL기초 #GROUPBY #집계함수 #데이터분석 #데이터요약 #SQL문법 #쿼리작성법 #DBMS #웹개발 #MySQL #SQL강의 #SQL예제 #HAVING

반응형
저작자표시 비영리 (새창열림)

'Database > SQL' 카테고리의 다른 글

[SQL] #07 SQL JOIN 완전 정복! INNER부터 LEFT, RIGHT까지 한눈에  (0) 2025.07.29
[SQL] #06 SQL 데이터 삽입(INSERT), 수정(UPDATE), 삭제(DELETE)  (0) 2025.07.28
[SQL] #04 SQL 조건문 완벽정리! WHERE, AND, OR, NOT 쉽게 배우기!  (0) 2025.07.18
[SQL] #03 SELCT 문 완벽 정리! 데이터 조회의 모든 것!  (0) 2025.07.17
[SQL] #02 SQL이란? 데이터베이스와 대화하는 언어!  (0) 2025.07.15
'Database/SQL' 카테고리의 다른 글
  • [SQL] #07 SQL JOIN 완전 정복! INNER부터 LEFT, RIGHT까지 한눈에
  • [SQL] #06 SQL 데이터 삽입(INSERT), 수정(UPDATE), 삭제(DELETE)
  • [SQL] #04 SQL 조건문 완벽정리! WHERE, AND, OR, NOT 쉽게 배우기!
  • [SQL] #03 SELCT 문 완벽 정리! 데이터 조회의 모든 것!
TOASTDEV
TOASTDEV
인스턴트 코딩 #토스트데브 #토스트뎁 #코딩공부 #개발입문
  • TOASTDEV
    토스트뎁
    TOASTDEV
    • 분류 전체보기 (59) N
      • 알쓸신잡 (20)
        • 코딩에 대하여 (13)
        • 컴퓨터에 대하여 (5)
        • IT 국내외 소식 (2)
      • Web Front (6)
        • HTML (6)
        • CSS (0)
        • JavaScript (0)
      • Programming (15)
        • PHP (15)
      • Database (7) N
        • SQL (7) N
        • MySQL (0)
      • Server (11) N
        • Linux (11) N
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Youtube Toastdev
    • Naver Blog
  • 공지사항

    • [유튜브] 유튜브 영상 업로드 안내
  • 인기 글

  • 태그

    dbms
    php코딩
    웹개발
    html기초
    코딩입문
    sql
    리눅스기초
    웹개발기초
    데이터분석
    데이터베이스
    php
    코딩공부
    우분투서버
    SQL기초
    ubuntu서버
    php문법
    ict
    서버관리
    웹프로그래밍
    프론트엔드
    ubuntuserver
    웹개발입문
    서버입문
    php입문
    리눅스서버
    코딩기초
    SQL문법
    HTML
    SQL강의
    php기초
  • 최근 댓글

  • 최근 글

  • 전체
    오늘
    어제
  • 반응형
  • hELLO· Designed By정상우.v4.10.3
TOASTDEV
[SQL] #05 SQL 집계 함수(count, sum, avg, max, min)와 Group by
상단으로

티스토리툴바