Algorithm/코딩테스트 (SQL)

[프로그래머스][JOIN] 상품 별 오프라인 매출 구하기(MySQL)

싱브이 2023. 11. 7. 23:40
728x90
반응형

문제

PRODUCT 테이블과 OFFLINE_SALE 테이블에서 상품코드 별 매출액(판매가 * 판매량) 합계를 출력하는 SQL문을 작성해주세요. 결과는 매출액을 기준으로 내림차순 정렬해주시고 매출액이 같다면 상품코드를 기준으로 오름차순 정렬해주세요.

 

 

 

 

내 생각

1. PRODUCT_CODE와 상품코드 별 매출액(판매가 * 판매량) 합계를 출력 : SUM(O.SALES_AMOUNT)*P.PRICE AS SALES

2. PRODUCT 테이블과 OFFLINE_SALE 테이블에서 : JOIN → PRODUCT_ID가 같은 경우

3. 상품코드 별 : PRODUCT_ID로 group by

4. 매출액을 기준으로 내림차순 정렬 : SALES DESC

5. 매출액이 같다면 상품코드를 기준으로 오름차순 정렬

 

 

 

 

코드

SELECT P.PRODUCT_CODE, SUM(O.SALES_AMOUNT)*P.PRICE AS SALES
FROM PRODUCT P JOIN OFFLINE_SALE O ON P.PRODUCT_ID=O.PRODUCT_ID
GROUP BY P.PRODUCT_CODE
ORDER BY SALES DESC, P.PRODUCT_CODE;
728x90
반응형