[2주차] - 통계적인 숫자들. 최대, 최소, 평균, 갯수.. 의미있는 정보로의 변환
범주(카테고리)로 묶어야지 정보들을 통계낼 수 있다.

group by
select name, count(*) from users
group by name;
group by가 들어가면 count가 그룹으로 묶어준 각각의 것에 대한 카운트가 들어간다.

!순서대로 다 쓰는 게 아니라, 쭉 쓰고 필요한 부분 다시 올라가서 수정하는 게 안헷갈리고 좋음.


min
select week, min(likes) from checkins
group by week;

max
avg
select week, avg(likes) from checkins
group by week;

round 반올림
select week, round(avg(likes),2) from checkins
group by week;

sum

! count가 제일 많이 쓰임.













order by
select name, count(*) from users
group by name
order by count(*);
            --------
맨 마지막에 하는 게 정렬(그러므로 맨 마지막에 써줌)
뒤에 아무것도 안쓰면 기본적으로 오름차순.(asc. ascending) desc라고 써주면 내림차순.(descending)

! 세미콜론(;)은 끝나는 부분 표시하는 건데 안붙여도 됨.


select payment_method, count(*) from orders
where course_title = '웹개발 종합반'
group by payment_method
order by count(*) desc


! 꿀팁. 이렇게 쿼리를 작성하면 편해요!
1) show tables로 어떤 테이블이 있는지 살펴보기
2) 제일 원하는 정보가 있을 것 같은 테이블에 select * from 테이블명 limit 10 쿼리 날려보기
3) 원하는 정보가 없으면 다른 테이블에도 2)를 해보기
4) 테이블을 찾았다! 범주를 나눠서 보고싶은 필드를 찾기
5) 범주별로 통계를 보고싶은 필드를 찾기
6) SQL 쿼리 작성하기!

참 쉽죠? 여러분은 이제 범주에 따라 통계치를 계산할 수 있는 사람이 되었답니다! 







별칭 기능
Alias [알리아스]

1. 첫번째 알리아스

select * from orders o
                          --
where o.course_title = '앱개발 종합반'
        --


2. 두번째 알리아스
select payment_method, count(*) as cnt from orders o
                                          -------
where o.course_title = '앱개발 종합반'
group by payment_method




<숙제>
select payment_method, count(*) as 주문건수 from orders o
where o.email like '%naver.com'
and o.course_title = '앱개발 종합반'
group by o.payment_method 




'SQL' 카테고리의 다른 글

엑셀보다 쉬운 SQL - 문법 정리  (0) 2021.10.24
엑셀보다 쉬운 SQL - 후기  (0) 2021.10.24
엑셀보다 쉬운 SQL - 4주차  (0) 2021.10.24
엑셀보다 쉬운 SQL - 3주차  (0) 2021.10.24
엑셀보다 쉬운 SQL - 1주차  (0) 2021.10.24
Posted by 캬웃
,