SQL/GROUP BY
[프로그래머스 SQL] Lv.4 - 저자 별 카테고리 별 매출액 집계하기
이런개발
2025. 3. 29. 10:17
https://school.programmers.co.kr/learn/courses/30/lessons/144856
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
문제 풀이
- 서브 쿼리로 BOOK 테이블과 BOOK_SALES 테이블을 조인한다.
- 판매일이 2022년 1월인 데이터를 필터링한다.
- 저자와 카테고리를 기준으로 그룹핑한다.
- 저자 ID, 카테고리, SUM 키워드로 저자 별, 카테고리 별 매출액을 조회한다.
- 위의 서브 쿼리 테이블과 AUTHOR 테이블을 조인한다.
- 저자 ID, 저자명, 카테고리, 매출액을 조회한다.
- 저자 ID를 기준으로 오름차순, 카테고리를 기준으로 내림차순 정렬한다.
SELECT
A.AUTHOR_ID,
AU.AUTHOR_NAME,
A.CATEGORY,
A.TOTAL_SALES
FROM
(
SELECT
B.AUTHOR_ID,
B.CATEGORY,
SUM(B.PRICE * BS.SALES) AS TOTAL_SALES
FROM
BOOK_SALES AS BS
JOIN BOOK AS B ON BS.BOOK_ID = B.BOOK_ID
WHERE
BS.SALES_DATE LIKE '2022-01%'
GROUP BY
1, 2
)
AS A
JOIN AUTHOR AS AU ON A.AUTHOR_ID = AU.AUTHOR_ID
ORDER BY
1, 3 DESC