1. 문제 풀이 아이디어
- 테이블을 결합하고 조건에 맞는 데이터를 필터링한 뒤, 그룹화 및 정렬한다.
2. 나의 정답 코드
SELECT
author_id,
author_name,
category,
SUM(price * sales)
FROM
book
NATURAL JOIN
author
NATURAL JOIN
book_sales
WHERE
sales_date BETWEEN '2022-01-01' AND '2022-01-31'
GROUP BY
author_id,
category
ORDER BY
author_id,
category DESC;
3. 정리
NATURAL JOIN
을 사용하여 세 테이블을 공통 속성을 기준으로 결합한다.
WHERE
절에서sales_date
를 조건으로 설정하여 2022년 1월 데이터를 필터링한다.
GROUP BY
절을 통해author_id
와category
를 기준으로 그룹화하여 집계 연산을 수행한다.
SUM(price * sales)
는 각 그룹별로 판매 금액의 총합을 계산한다.
ORDER BY
에서author_id
는 오름차순,category
는 내림차순으로 정렬하여 출력한다.
Share article