SQL/MY SQL 문제 풀이(프로그래머스)

[MYSQL] PROGRAMMERS_ 5월 식품들의 총매출 조회하기

몽총한몽이네 2024. 2. 23. 19:12
반응형

SELECT p.PRODUCT_ID, p.PRODUCT_NAME, PRICE*sum(AMOUNT) as TOTAL_SALES 
FROM FOOD_PRODUCT as p, FOOD_ORDER as o
WHERE p.PRODUCT_ID = o.PRODUCT_ID
AND PRODUCE_DATE like "2022-05%"
GROUP BY 1
ORDER BY 3 desc,1

 

문제

FOOD_PRODUCT와 FOOD_ORDER 테이블에서 생산일자가 2022년 5월인 식품들의 식품 ID, 식품 이름, 총매출을 조회하는 SQL문을 작성후 결과는 총매출을 기준으로 내림차순 정렬해주시고 총매출이 같다면 식품 ID를 기준으로 오름차순 정렬

 

크게 어려울게 없는 문제이다. 실수를 할 요소가 있다면 SUM(AMOUNT) 이후 *PRICE를 해야한다는 점 정도이다.

그 외에는 두개의 테이블을 유일성을 가지는 컬럼인 PRODUCT_ID를 기준으로 조인해준다. 그후 날짜가 2022년 05월인 데이터를 like % 조건으로 필터링 해주고 PRODUCT ID 기준으로 출력을 해야하기에 GROUP BY 1로 처리해준다. 그후 정렬하면 마무리이다.

 

크게 어려울건 없지만 실수로 놓치는 부분이 있다면 틀리니 항상 SELECT * 을 하는 습관을 들여야겠다.

 

반응형