GROUP BY
GROUP BY
절은 지정한 열의 값이 같은 행들을 하나의 그룹으로 묶어 집계하는 데 사용됩니다.
주로 COUNT()
, SUM()
, AVG()
같은 집계 함수와 함께 사용해 범주별 데이터를 요약할 때 유용합니다.
왜 GROUP BY를 사용할까요?
다음과 같은 질문에 답할 수 있습니다.
- 지역별로 고객은 몇 명일까?
- 고객별 총매출은 얼마일까?
- 지역별 평균 주문 금액은 얼마일까?
기본 문법
GROUP BY
절은 SELECT
문에서 FROM
절 뒤에 위치합니다.
GROUP BY 구문
SELECT column_name, AGG_FUNCTION(column_name) FROM table_name GROUP BY column_name;
열을 기준으로 그룹을 만든 뒤, 각 그룹에 집계 함수를 적용해 요약 결과를 반환합니다.
단계별 실습
실습에서는 clients
테이블을 사용합니다. 이 테이블의 일부 데이터는 다음과 같습니다.
client_id | name | region | sales | orders_count | |
---|---|---|---|---|---|
1 | Client 1 | client1@example.com | Texas | 8041 | 19 |
2 | Client 2 | client2@example.com | New York | 8619 | 3 |
... | ... | ... | ... | ... | ... |
지역별 고객 수 세기
GROUP BY
와 COUNT(*)
를 함께 사용하면 각 지역별 고객 수를 계산할 수 있습니다.
지역별 고객 수
SELECT region, COUNT(*) AS client_count FROM clients GROUP BY region;
지역별 총매출
GROUP BY
와 SUM(sales)
를 함께 사용하면 각 지역의 총매출을 계산할 수 있습니다.
지역별 총매출
SELECT region, SUM(sales) AS total_sales FROM clients GROUP BY region;
지역별 평균 매출
GROUP BY
와 AVG(sales)
를 함께 사용하면 각 지역의 평균 매출을 구할 수 있습니다.
지역별 평균 매출
SELECT region, AVG(sales) AS avg_sales FROM clients GROUP BY region;
핵심 정리
GROUP BY
는 지정한 열의 값이 같은 행을 그룹으로 묶습니다.- 집계 함수(
COUNT()
,SUM()
,AVG()
등)와 함께 사용해 그룹별 요약 정보를 제공합니다. - SQL 구문 순서에서
GROUP BY
는SELECT
→FROM
→GROUP BY
→ORDER BY
순으로 작성합니다.
Quiz
0 / 1
SQL에서 GROUP BY 절의 주요 목적은 무엇인가요?
데이터베이스 테이블의 행을 정렬한다.
조건에 따라 행을 필터링한다.
지정한 열에서 동일한 값을 갖는 행들을 집계를 위해 그룹화한다.
여러 테이블을 Join한다.
학습 자료
AI 튜터
디자인
업로드
수업 노트
즐겨찾기
도움말
코드 에디터
코드 실행
코드 생성
DB 테이블 구조
실행 결과