[solvesql] 할부는 몇 개월로 해드릴까요
출처
문제
난이도: 보통, 주제: GROUP BY, 제출 횟수: 3735번, 정답 횟수: 597번, 정답률: 15.98%, 출제자: [데이터리안] 혜정
olist_order_payments_dataset
테이블에는 각 주문의 결제 정보가 저장되어 있습니다.
고객이 Olist 상점에서 신용카드로 주문한 내역을 할부 개월 수 별로 나누어 살펴보려고 합니다. 할부 개월 수 별로 주문 수, 최소 결제 금액, 최대 결제 금액, 평균 결제 금액을 집계해주세요. 결과 데이터에는 5개의 컬럼이 들어가야 합니다.
payment_installments
- 할부 개월 수order_count
- 주문 수min_value
- 최소 결제 금액max_value
- 최대 결제 금액avg_value
- 평균 결제 금액
풀이
- 뻘짓 많이한 문제…
- 요구하는 컬럼명 확인
distinct
중복 데이터 제거하기- 나머지 값들은 잘 넣은 것 같았는데 오답이 나와서 계속 시도하고 확인해보았다. 테이블을 다시 확인하는데…
select * from olist_order_payments_dataset limit 100
테이블 정보 확인 다시하기..payment_type
결제방법에credit_card
라고 있는데 문제에 나와있는 신.용.카.드 로 주문한 내역…where
절에credit_card
신용카드 조건 달기- 문제를 꼼꼼하게 읽어보자!
1
2
3
4
5
6
7
8
9
10
11
12
13
select
payment_installments,
count(distinct order_id) as order_count,
min(payment_value) as min_value,
max(payment_value) as max_value,
avg(payment_value) as avg_value
from
olist_order_payments_dataset
where
payment_type = "credit_card"
group by
payment_installments
-- select * from olist_order_payments_dataset limit 100