네이버 이메일을 사용하여 앱개발 종합반을 신청한 주문의 결제수단별 주문건수 세어보기
실습으로 위의 내용을 도출하기 위해 작성해보기 연습을 해보자.
우선 어느 테이블이 해당 내용의 데이터를 뽑아내는데 적절한지 살펴보자.
select *
from orders
orders테이블이 적당한 것 같다.
추가로 앱개발 종합반을 신청한 부분만 필요하니, where문구로 선택해주자.
select *
from orders o
where o.course_title = '앱개발 종합반'
이후 결제수단별로 묶어 주는게 좋겠지?
select *
from orders o
where o.course_title = '앱개발 종합반'
group by payment_method
이제 naver를 사용하는 email 것들로만 추려보자. 아마 like 패턴을 사용하면 될꺼같다.
select *
from orders o
where o.course_title = '앱개발 종합반'
like email = '%naver.com'
group by payment_method
어우 더블 벨류라는 오류가 뜬다. where절을 수정해주고 새로 쿼리를 작성해보자.
and를 활용해서 새로 작성해보는게 좋을 것 같다.
새로 작성하는 마음으로 naver email을 사용한 것들로 다시 추려보자.
select *
from orders o
where o.email like '%naver.com'
orders테이블에서 email이 naver인 것들로 추렸다.
이 중에서 '앱개발 종합반'으로 추가로 추려줘야 한다.
select *
from orders o
where o.email like '%naver.com'
and o.course_title = '앱개발 종합반'
email이 naver이면서 course_title이 '앱개발 종합반'인 데이터로 추려졌다.
이후 결제수단별로 묶어주고
select *
from orders o
where o.email like '%naver.com'
and o.course_title = '앱개발 종합반'
group by o.payment_method
count로 결제수단별 주문건수를 세어 줘야겠다
select o.payment_method, count(*)
from orders o
where o.email like '%naver.com'
and o.course_title = '앱개발 종합반'
group by o.payment_method
좀 더 보기 좋게 오름차순으로 정렬 및 count에 별칭을 달아주자.
select o.payment_method, count(*) as cnt
from orders o
where o.email like '%naver.com'
and o.course_title = '앱개발 종합반'
group by o.payment_method
order by o.payment_method desc
호우! 성공!
'SQL' 카테고리의 다른 글
Join (Left Join / Inner Join) (0) | 2022.05.22 |
---|---|
Join을 왜 배우고 왜 써야하는가? (0) | 2022.05.22 |
SQL 별칭 기능 (Alias) (0) | 2022.05.22 |
Group by, Order by 연습해보기 (0) | 2022.05.11 |
Order by 문자열은 정렬이 되는가? (0) | 2022.05.11 |