GROUP BY [SQL]

Kyeong_Bong·2022년 8월 27일
0

SQL

목록 보기
5/5
post-thumbnail

GROUP BY절

  1. 특정 칼럼을 기준으로 그룹화한다.
  • SELECT절에서는 그룹화한 칼럼명 또는 집계함수가 입력이 가능하다.

숫자 집계함수

  • 숫자값을 가진 여러 행들에 대해 하나의 결과값을 반환한다.

    그래도 이 친구들은 좀 쉬운거 같다

#함수설명
1COUNT( * )NULL을 포함한 전체 행의 수를 반환
2COUNT ( 칼럼 )칼럼 안에서 NULL을 제외한 행의 수를 반환
3COUNT ( DISTINCT 칼럼 )칼럼 안에서 중복을 제외한 행의 수를 반환
4SUM ( 칼럼 )칼럼 안에서 NULL을 제외한 합계값을 반환
5AVG ( 칼럼 )칼럼 안에서 NULL을 제외한 평균값을 반환
6MAX ( 칼럼 )칼럼 내의 최댓값을 반환
7MIN ( 칼럼 )칼럼 내의 최소값을 반환

3. SELECT와 같이 사용해보기

[돈까스맛집정보]

가게이름위치가격스타일호불호
A돈까스익산8000일식카츠불호
B돈까스전주11000일식카츠
C규카츠홍대13000규카츠
D돈까스광주NULL경양식카츠
E돈까스구로10000경양식카츠불호
F돈까스강남15000일식카츠
G돈까스수원13000경양식카츠NULL

1. 테이블에 존재하는 전체 행 수 ( COUNT )

SELECT COUNT(*) AS 종류수
FROM 돈까스맛집정보
종류수
7

SELECT COUNT(가격) AS 가격들
FROM 돈까스맛집정보
가격들
6

SELECT COUNT(DISTINCT 가격) AS 가격들
FROM 돈까스맛집정보
가격들
5

2. 스타일에 따른 가격의 합계 (NULL값 제외)

SELECT 스타일, SUM(가격) AS 합계
FROM 돈까스맛집정보
GROUP BY 스타일
스타일합계
경양식카츠23000
알식카츠34000
규카츠13000

3. 스타일에 따른 가격의 평균 (NULL값 제외 / 포함)

SELECT 스타일, AVG(가격) AS 합계
FROM 돈까스맛집정보
GROUP BY 스타일
스타일합계
경양식카츠11500
알식카츠17000
규카츠13000

SELECT 스타일, AVG(가격) AS 합계1,
	   SUM(가격)/COUNT(*) AS 합계2
FROM 돈까스맛집정보
GROUP BY 스타일
스타일합계1합계2
경양식카츠115007666
알식카츠1700017000
규카츠1300013000

4. 스타일에 따른 가격의 최댓값 / 최소값 ( MAX / MIN )

SELECT 스타일, MAX(가격) AS 최대값
FROM 돈까스맛집정보
GROUP BY 스타일
스타일합계
경양식카츠13000
알식카츠15000
규카츠13000

SELECT 스타일, MIN(가격) AS 최대값
FROM 돈까스맛집정보
GROUP BY 스타일
스타일합계
경양식카츠10000
알식카츠8000
규카츠13000

profile
Junior Developer🔥

0개의 댓글