SQL Group by 와 Order by 기능

이정기·2022년 10월 29일
0

TIL

목록 보기
6/71
post-thumbnail

Group by 란?

동일한 범주를 갖는 데이터를 하나로 묶어서, 범주별 통계를 내주는 것을 의미
Group by를 이용하면 1) 데이터를 하나로 묶고 2) 각 데이터의 수를 구할 수 있다.

select 필드, count(*) from 테이블이름
group by 묶을 필드 // 해당 필드의 갯수를 구할 수 있음

오류를 줄이기 위한 group by 입력 순서

  1. '테이블 이름'에서 동일한 '필드'를 group by 로 묶는다.
select * from 테이블 이름
group by 묶을 필드
  1. '필드'를 묶은 것 | '필드'를 묶은 것 당 count 추출
select 필드, count(*) from 테이블 이름
group by 묶을 필드
필드테이블이름
필드데이터015
필드데이터0230

group by 의 다양한 기능

1. count() 동일한 범주의 개수 구하기

selet 필드, count(*) from 테이블 이름
group by 묶을 필드

2. min() 동일한 범주에서의 최솟값 구하기

selet 필드, min(최솟값을 구할 필드) from 테이블 이름
group by 묶을 필드

3. max() 동일한 범주에서의 최댓값 구하기

selet 필드, max(최댓값을 구할 필드) from 테이블 이름
group by 묶을 필드

4. 동일한 범주의 평균 구하기

selet 필드, avg(평균값을 구할 필드) from 테이블 이름
group by 묶을 필드

avg()은 소수점까지 나오므로 round() 와 함께 써 반올림 해준다.

selet 필드, round(avg(최솟값을 구할 필드), 반올림자리) from 테이블 이름
group by 묶을 필드

5. 동일한 범주의 합계 구하기

selet 필드, sum(합계을 구할 필드) from 테이블 이름
group by 묶을 필드

Order by 란?

테이블의 데이터를 정렬 할 수 있다.

select 필드 from 테이블이름
order by 정렬할 필드 //  내림차순 정렬

select 필드 from 테이블이름
order by 정렬할 필드 desc // 오름차순 정렬

where 와 group by 하고 같이 쓸 수 있다.
profile
Node.js 로 꿈을 꾸었다..

0개의 댓글