- 문제 : 신용카드로 주문한 내역을 할부 개월 수 별로 주문 수, 최소 결제 금액, 최대 결제 금액, 평균 결제 금액 집계 https://solvesql.com/problems/installment-month/
- 사용할 테이블과 내용
- olist_order_payments_dataset : 주문 ID, 결제 방법, 할부 개월 수, 결제 금액
1. 결제 방법을 확인하기 위해 아래 코드로 확인
- 신용카드로 주문한 것을 셀에 어떻게 표현했는지 확인하기 위해 아래 코드로 확인 (credit_card)
select payment_type
from olist_order_payments_dataset
limit 10;
2. 출력할 컬럼 작성
- payment_installments : 할부 개월 수
- order_count : distinct로 중복을 제거하여 주문 ID를 통해 주문 수 집계 (distinct 안 써서 오류났었다)
- min_value : min( ) 함수 사용하여 최소 결제 금액 구하기
- max_value : max( ) 함수 사용하여 최대 결제 금액 구하기
- avg_value : avg( ) 함수 사용하여 평균 결제 금액 구하기
3. 신용카드 결제 내역 중~ 이라고 했으므로 where 조건 작성
where payment_type = 'credit_card'
4. 최종 코드
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
'Coding Test > SolveSQL' 카테고리의 다른 글
SolveSQL :: 난이도 3 문제풀이 (4) | 2025.03.25 |
---|---|
SolveSQL :: 난이도 2 문제풀이 (1) | 2025.03.25 |
SolveSQL :: 난이도 1 문제풀이 (1) | 2025.03.25 |
[SolveSQL] 복수 국적 메달 수상한 선수 찾기 (0) | 2022.03.18 |
[SolveSQL] 쇼핑몰의 일일 매출액과 ARPPU (0) | 2022.03.18 |