[코딩테스트] 31. 카테고리 별 도서 판매량 집계하기

편준민's avatar
Apr 16, 2025
[코딩테스트] 31. 카테고리 별 도서 판매량 집계하기

테이블 index

📌

BOOK 

Column name
Type
Nullable
Description
BOOK_ID
INTEGER
FALSE
도서 ID
CATEGORY
VARCHAR(N)
FALSE
카테고리 (경제, 인문, 소설, 생활, 기술)
AUTHOR_ID
INTEGER
FALSE
저자 ID
PRICE
INTEGER
FALSE
판매가 (원)
PUBLISHED_DATE
DATE
FALSE
출판일
BOOK_SALES 
Column name
Type
Nullable
Description
BOOK_ID
INTEGER
FALSE
도서 ID
SALES_DATE
DATE
FALSE
판매일
SALES
INTEGER
FALSE
판매량

문제

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

예시

notion image

풀이

1월에 팔린 book만 보고 싶기 때문에 where절에 month를 이용하여 1월 만 출력
SELECT * from BOOK_SALES where month(sales_date) = 1
카테고리 별 판매량이 궁금하기 때문에 판매 정보BOOK_SALES 과 도서 정보BOOK 를 같은 컬럼인 book_idJOIN
SELECT * from BOOK_SALES st inner join book bt ON st.BOOK_ID = bt.BOOK_ID where month(sales_date) = 1
카테고리 별 이기 때문에 카테고리를 group by
SELECT * from BOOK_SALES st inner join book bt ON st.BOOK_ID = bt.BOOK_ID where month(sales_date) = 1 group by bt.CATEGORY
이후 필요한 컬럼, 총 판매량이 필요하기 때문에 group by를 사용하였기에 salessum을 이용하여 결과 출력
SELECT bt.CATEGORY, sum(sales) TOTAL_SALES from BOOK_SALES st inner join book bt ON st.BOOK_ID = bt.BOOK_ID where month(sales_date) = 1 group by bt.CATEGORY order by bt.CATEGORY
notion image
 
Share article

YunSeolAn