SQL 문제

[solvesql_Level3] 쇼핑몰의 일일 매출액과 ARPPU

빙수빈수 2023. 10. 13. 11:02

https://solvesql.com/problems/daily-arppu/

 

https://solvesql.com/problems/daily-arppu/

 

solvesql.com

[코드]

select
  date(a.order_purchase_timestamp) as dt,
  count(DISTINCT a.customer_id) as pu,
  round(sum(b.payment_value), 2) as revenue_daily,
  round(
    sum(b.payment_value) / count(distinct a.customer_id),
    2
  ) as arppu
from
  olist_orders_dataset as a
  inner join olist_order_payments_dataset as b on a.order_id = b.order_id
where
  date(a.order_purchase_timestamp) >= '2018-01-01'
group by
  dt
order by
  dt;

 

[고찰]

 이번 문제는 customer_id의 중복을 제거해주지 않으면 revenue_daily와 arppu 속성의 값이 다르게 계산되므로 오답 처리를 받으므로 distinct 명령어를 사용하여 컬럼의 중복을 제거해주어야 한다. 이 부분만 주의하면 기본 join 문제였다.