1. 문제 풀이 아이디어
- 두 테이블을
JOIN
절로 결합한 후,WHERE
절과GROUP BY
절을 사용하여 문제에서 요구하는 조건에 맞는 총 매출을 계산하여 문제를 해결한다.
2. 나의 정답 코드
SELECT
product_id,
product_name,
SUM(amount)*price total_sales
FROM
food_order
NATURAL JOIN
food_product
WHERE
produce_date BETWEEN '2022-05-01' AND '2022-05-31'
GROUP BY
product_id
ORDER BY
total_sales DESC, product_id;
3. 정리
NATURAL JOIN
을 사용하여food_product
테이블과food_order
테이블을 결합한다.
WHERE
절에서BETWEEN
키워드를 사용해produce_date
가 2022년 5월인 행만 필터링한다.
GROUP BY
절을 사용하여product_id
별로 그룹화하고,SUM
집계 함수로amount
의 합을 구한 후,price
를 곱하여total_sales
라는 별칭을 붙인다.
ORDER BY
절에서는total_sales
를 기준으로 내림차순으로 정렬하고, 동일한 총 매출이 있을 경우product_id
를 기준으로 오름차순으로 정렬한다.
Share article