Oracle

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

파지티브헌 2023. 2. 8. 10:34

 

현재 학습중인 INNER JOIN과 필터링을 활용하여 푸는 문제이다. 

FOOD_PRODUCT 테이블에는 PRODUCT의 정보가 들어있고

FOOD_ORDER 테이블에는 생산정보가 들어있다.

FOOD_ORDER 테이블에서 PRODUCT_ID별로 그룹을 생성하고  

FOOD_ORDER의 AMOUNT와 FOOD_PRODUCT의 PRICE를 곱하게 되면 총량이 됩니다.

 

FOOD_ORDER 테이블에서 생산년도가 22년5월인 제품들을 추려내려면

PRODUCE_DATE에 22-05가 포함된 제품들을 추려내면 됩니다.

 

그리고 정렬기준을 설정해주면 문제는 해결됩니다. 

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