[코딩테스트] [solvesql] 쇼핑몰의 일일 매출액

문제


Brazilian E-Commerce Public Dataset by Olist 데이터셋은 브라질의 이커머스 웹사이트인 Olist Store의 판매 데이터 입니다. 그 중 olist_orders_dataset 테이블에는 주문 ID, 고객 ID, 주문 상태, 구매 시각 등 주문 내역 데이터가 들어있습니다. olist_order_payments_dataset 테이블에는 주문 ID, 결제 방법, 결제 금액 등 각 주문의 결제와 관련된 정보가 저장되어 있습니다. 두 테이블을 이용해 2018년 1월 1일 이후 쇼핑몰의 일일 매출액을 계산하는 쿼리를 작성해주세요.

주문 각각에 대해 매출이 일어나는 시점은 olist_orders_dataset 테이블의 order_purchase_timestamp 컬럼에 기록되고, 주문 금액은 olist_order_payments_dataset 테이블의 payment_value 컬럼에 기록됩니다.

쿼리 결과는 아래 두 컬럼을 포함해야 하고, 매출 날짜 기준으로 오름차순 정렬되어 있어야 합니다. 매출액은 반올림 해 소수점 둘째자리까지 출력해주세요.

dt - 매출 날짜 (예: 2018-01-01)
revenue_daily - 해당 날짜의 매출액

정답


select date(o.order_purchase_timestamp) as dt,
round(sum(payment_value),2) as revenue_daily
from olist_orders_dataset as o
join olist_order_payments_dataset as p on o.order_id = p.order_id
where date(o.order_purchase_timestamp) >= '2018-01-01'
group by date(o.order_purchase_timestamp)
order by date(o.order_purchase_timestamp)

풀이


날짜 변환 : DATE(열 이름)

반올림 : ROUND(열 이름, 반올림할 자리 값)

문제 출처


https://solvesql.com/problems/olist-daily-revenue/

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유