[SQL]Group by와 Order by

야부엉·2023년 9월 25일

GROUP BY

  • GROUP BY란?
    - 동일한 범주의 데이터를 하나씩 묶어서, 범주별 통계를 낼 때 사용
  • SQL에서 쿼리가 실행되는 순서
	select name, count(*) from users
	group by name;
	- 실행 순서 : from -> group by -> select

사용 예시

  1. 동일한 범주의 개수 구하기
	select 범주별로 세어주고 싶은 필드명, count(*) from 테이블명
	group by 범주별로 세어주고 싶은 필드명;
  1. 동일한 범주의 최소값 구하기
	select 범주가 담긴 필드명, min(최솟값을 알고 싶은 필드명) from 테이블명
	group by 범주가 담긴 필드명;
  1. 동일한 범주의 최댓값 구하기
	select 범주가 담긴 필드명, max(최댓값을 알고 싶은 필드명) from 테이블명
	group by 범주가 담긴 필드명;
  1. 동일한 범주의 평균 구하기
	select 범주가 담긴 필드명, avg(평균값을 알고싶은 필드명) from 테이블
	group by 범주가 담긴 필드명;
  1. 동일한 범주의 합계 구하기
	select 범주가 담긴 필드명, sum(합계를 알고싶은 필드명) from 테이블
	group by 범주가 담긴 필드명;

ORDER BY

  • 사용 이유 : 어떠한 기준을 통해 정렬하고 싶을 때 사용

사용 예시

  1. 기본 형식
    select * from 테이블명
	order by 정렬의 기준이 될 필드명 DESC or ASC; 
	- ASC : 오름차순(default)
    - DESC : 내림차순

유용한 문법

  1. 별칭 기능(Alias)
    select 필드명, count(*) as 별칭 from table t
	where t.id = '4885'
	group by 필드명
profile
밤낮없는개발자

0개의 댓글