본문 바로가기
카테고리 없음

sql 문법정리 2

by 흰색남자 2021. 7. 21.

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

이렇게 name필드를 그룹으로 묶어서 카운트를 한다.

위 쿼리가 실행되는 순서: from → group by → select

 

select * from users where name = "신**";

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

//users 테이블에서 '신' 씨를 가진 데이터만 불러와서 개수

 

select 범주가 담긴 필드명, sum(합계를 알고 싶은 필드명) from 테이블명 group by 범주가 담긴 필드명;

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

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

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

select 범주별로 세어주고 싶은 필드명, count(*) from 테이블명 group by 범주별로 세어주고 싶은 필드명;

이렇게 생각하면 쉬움.

 

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

오름차순 정렬. 작은값부터 출력함. order by

 

 

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

내림차순 desc가 붙으면 내림차순

 

위 쿼리가 실행되는 순서: from → group by → select → order by

 

1. orders 테이블에서 주문 데이터를 읽어오고

2. 웹개발 종합반 데이터만 남기고

3. 결제수단(범주) 별로 그룹화하고

4. 결제수단별 주문건수를 세어준다!

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

위 쿼리가 실행되는 순서: from → where → group by → select