초이준철
물낌표
초이준철
전체 방문자
오늘
어제
  • 분류 전체보기 (59)
    • Python (6)
    • SQL (37)
    • 경험 (4)
    • Tableau (7)
      • Tableau 기본 (2)
      • Tableau 빅스데이터 22여름 대학생 TWBX (5)
    • 책으로 배우는 공부 (5)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 새빨간 거짓말 통계
  • mysql 문자열 자르기
  • Mysql ifnull
  • MYSQL 집계함수
  • MYSQL 테이블 구조
  • MYSQL CASE문
  • 데이터리안
  • 데벨챌
  • MYSQL desc
  • mysql 문자열 연결
  • 데이터 심리학
  • mysql set
  • mysql concat
  • 통계책
  • MYSQL group by
  • 물낌표
  • MYSQL insert
  • TWBX 대학생
  • TWBX 과제
  • 데이터 분석 방법

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
초이준철

?!

[MYSQL] GROUP BY절, 집계 함수와 함께 알아보기
SQL

[MYSQL] GROUP BY절, 집계 함수와 함께 알아보기

2022. 8. 5. 17:07

GROUP BY절은 말 그대로 원하는 열(Column)을 그룹으로 묶어주는 역할을 합니다.

GROUP BY절은 WHERE, HAVING, ORDER BY와 함께 자주 사용되기 때문에 SQL 구문 순서를 잘 지켜주셔야 해요!

SQL구문 순서
SELECT 열_이름
    FROM 테이블_이름
    WHERE 조건식
    GROUP BY 열_이름
    HAVING 조건식 (GROUP BY절 기준 조건식)
    ORDER BY 열_이름
    LIMIT 숫자

 

집계 함수는 주로 GROUP BY절과 함께 자주 사용되기 때문에 꼭 기억해주시면 좋을 것 같아요.

집계함수
SUM() - 합계
AVG() - 평균
MIN() - 최소값
MAX() - 최대값
COUNT() - 개수
COUNT(DISTNCT) - 개수(단, 중복없음)

 

 

예제를 통해서 GROUP BY절 사용법을 바로 알아봐요. (feat. 집계 함수)

출처: '혼공S'

예제) mem_id를 그룹화를 통해서 묶고, amount의 합계를 구하기

SELECT mem_id, SUM(amount) FROM buy GROUP BY mem_id;

결괏값

설명: GROUP BY로 mem_id 열을 그룹별로 묶어준 다음 SUM() 집계 함수를 통해 amount 개수를 합치는 순서예요.

 

예제 2) prod_name을 그룹화를 통해서 묶고, amount * price(팔린 금액)의 합계 구하기

SELECT prod_name, SUM(price * amount) FROM buy GROUP BY prod_name;

결괏값

설명: prod_name 열을 그룹별로 묶어주고, SUM() 집계 함수 안에 price * amount 값을 넣고 그룹별 합계가 나온 거예요.

 

예제 3) mem_id을 그룹화하고, price * amount 합계 구하기 (단, amount가 5 이상)

SELECT mem_id, SUM(price * amount) FROM buy WHERE amount >= 5 GROUP BY mem_id;

결괏값

설명: 해당 예제에는 조건식이 있어요. WHERE절에 해당 조건을 입력하면,

amount가 5 이상인 값들을 가지고 price * amount가 집계돼요.

저작자표시 (새창열림)
    'SQL' 카테고리의 다른 글
    • [MYSQL] 테이블 구조 살펴보는 방법 DESC
    • [MYSQL] INSERT 확실하고 쉽게 알아봐요
    • [MYSQL] LIMIT 출력 개수 제한, DISTINCT 중복 제거
    • [MYSQL] ORDER BY절 오름차순, 내림차순 기본
    초이준철
    초이준철
    WNWA

    티스토리툴바