♧ 프로그래머스 SQL/Lv. 2

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

Grit_0913 2024. 8. 18. 15:09

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

하단의 목차를 클릭하여 이동할 수 있습니다 :)

1. 문제 (+풀이)
2. 해답

1. 문제 (+풀이)

  • FROM ~ JOIN ~ ON ~ 
    • PRODUCT 테이블과 OFFLINE_SALE 테이블 두 개를 활용하기에 JOIN을 해야한다.
    • PROUCT_ID가 PRIMARY KEY와 FOREIGN KEY로 예상되기에 이를 기준으로 JOIN을 시도할 수 있다.
    • ALIAS 또한 염두해야한다.
  • GROUP BY
    • 상품코드(PRODUCT_CODE) 별로 그룹화하기 위해 사용한다.
  • SELECT ~ SUM()
    • 두 테이블의 PRICE와 SALES_AMOUNT를 통해 연산을 하고 집계 함수를 적용해야 한다.


2. 해답

-- 코드를 입력하세요
SELECT
    P.PRODUCT_CODE,
    SUM(P.PRICE * O.SALES_AMOUNT) AS SALES
FROM PRODUCT AS P 
    JOIN OFFLINE_SALE AS O
    ON P.PRODUCT_ID = O.PRODUCT_ID
GROUP BY P.PRODUCT_CODE
ORDER BY SALES DESC, PRODUCT_CODE