프로그래머스_5월 식품들의 총매출 조회하기

임정민·2023년 6월 4일

SQL 문제풀이

목록 보기
49/53
post-thumbnail

문제

https://school.programmers.co.kr/learn/courses/30/lessons/131117

풀이

SELECT A.PRODUCT_ID, A.PRODUCT_NAME, SUM(A.PRICE*B.AMOUNT) "TOTAL_SALES"
    FROM FOOD_PRODUCT A
    INNER JOIN FOOD_ORDER B
    ON A.PRODUCT_ID = B.PRODUCT_ID
    WHERE PRODUCE_DATE LIKE '2022-05%'
    GROUP BY A.PRODUCT_ID
    ORDER BY SUM(A.PRICE*B.AMOUNT) DESC, A.PRODUCT_ID ASC;

조건에 맞는 식품의 총 매출액을 구하는 문제였습니다. PRODUCT_ID를 기준으로 GROUP BY 하고 SUM(가격*갯수) 구문으로 쉽게 해결할 수 있었습니다.
🐹🐹🐹

저의 풀이 이외에

SELECT P.PRODUCT_ID, P.PRODUCT_NAME, P.PRICE * O.AMOUNT AS TOTAL_SALES
FROM FOOD_PRODUCT P
JOIN (
    SELECT PRODUCT_ID, SUM(AMOUNT) AS AMOUNT
    FROM FOOD_ORDER
    WHERE DATE_FORMAT(PRODUCE_DATE, '%Y-%m') = '2022-05'
    GROUP BY PRODUCT_ID
    ) O
ON P.PRODUCT_ID = O.PRODUCT_ID

ORDER BY TOTAL_SALES DESC, P.PRODUCT_ID
;

위와 같이 서브 쿼리를 통해 조건에 맞는 식품별 총 갯수를 구한 후 총 매출액을 출력한 풀이를 볼 수 있었습니다.🐏🐏🐏

감사합니다.

profile
https://github.com/min731

0개의 댓글