강의/엑셀보다 쉬운, SQL

[강의] 엑셀보다 쉬운, SQL 2주차

newljk415 2023. 4. 25. 22:08
728x90
728x90
SMALL

[수업 목표]

  1. 동일한 범주의 데이터를 묶어서 통계를 내주는 Group by를 이해한다.
  2. 출력하는 데이터를 필드의 값으로 정렬하여 출력하는 Order by를 익힌다.
  3. 조금 더 복잡한 분석을 위해 자주 사용되는 유용한 문법을 익힌다.

 

Group by : 동일한 범주의 데이터를 묶는다.

select name, count(*) from users
group by name;

name 필드선택(select name) / 갯수구하기(count) / users테이블로부터(from users)

name필드에서 같은 데이터끼리 묶어라(group by name)

<users테이블에 있는 name필드에 동일한 데이터의 갯수를 구해라>

 

응용1. min최소, max최대, avg평균

select 범주가 담긴 필드명, min(최솟값을 알고 싶은 필드명) from 테이블명
group by 범주가 담긴 필드명;

select 범주가 담긴 필드명, max(최대값을 알고 싶은 필드명) from 테이블명
group by 범주가 담긴 필드명;

select 범주가 담긴 필드명, avg(평균값을 알고 싶은 필드명) from 테이블명
group by 범주가 담긴 필드명;

 

응용2. 조건추가 where

select payment_method, count(*) from orders
where course_title = "웹개발 종합반"
group by payment_method
  1. orders 테이블에서 주문 데이터를 읽어오고
  2. 웹개발 종합반 데이터만 남기고
  3. 결제수단(범주) 별로 그룹화하고
  4. 결제수단별 주문건수를 세어준다

 

Order by : 순서정렬

select name, count(*) from users
group by name
order by count(*) 오름차순정렬
order by count(*) desc 내림차순정렬
728x90
728x90
LIST