티스토리 뷰

SQL

MySQL 코딩테스트 -카테고리 별 도서 판매량 집계하기 date_format

코드ABC

MySQL 코딩테스트 -카테고리 별 도서 판매량 집계하기

2022년 1월의 카테고리 별 도서 판매량을 합산하고, 카테고리(CATEGORY), 총 판매량(TOTAL_SALES) 리스트를 출력하는 SQL문을 작성해주세요. 결과는 카테고리명을 기준으로 오름차순 정렬해주세요.

 

 

문제풀이방법

  1. 두개의 테이블을 book_id로 조인한다.
  2. 카테고리별로 묶어야하므로 group by를 사용한다. 
  3. 추출할 값은 카테고리명과 총 판매량이므로 sum을 사용한다.
  4. 추출할 값은 2022년 1월데이터이므로, date_format으로 포매팅해서 값을 맞춰준후 where로 필터링한다. 참고로 여기서 BOOK_SALES 테이블의 sales_date 필드로 필터링해야하는데 BOOK 테이블의 published_date를 사용하지않도록 주의하자.
  5. 마지막으로 카테고리명으로 오름차순 정렬한다.
select  b.CATEGORY,sum(s.SALES) as TOTAL_SALES from BOOK b
inner join BOOK_SALES s on b.BOOK_ID=s.BOOK_ID
where date_format(s.SALES_DATE,'%Y-%m')='2022-01'
group by b.CATEGORY
order by b.CATEGORY
최근에 올라온 글
최근에 달린 댓글
링크