[프로그래머스 / SQL] 상품 별 오프라인 매출 구하기

Dreamer·2025년 5월 26일

문제

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

나의 풀이

  1. 오답 풀이
    (판매가 * 판매량)의 합계를 출력해야하는데 GROUP BY만 걸어줘서 틀림
SELECT 
    p.PRODUCT_CODE, 
    (os.SALES_AMOUNT * p.PRICE) AS SALES
FROM PRODUCT p
JOIN OFFLINE_SALE os ON p.PRODUCT_ID = os.PRODUCT_ID
GROUP BY p.PRODUCT_CODE
ORDER BY SALES DESC, p.PRODUCT_CODE ASC
  1. SUM() 사용
SELECT 
    p.PRODUCT_CODE, 
    SUM(os.SALES_AMOUNT * p.PRICE) AS SALES
FROM PRODUCT p
JOIN OFFLINE_SALE os ON p.PRODUCT_ID = os.PRODUCT_ID
GROUP BY p.PRODUCT_CODE
ORDER BY SALES DESC, p.PRODUCT_CODE ASC
profile
Moving forward based on records

0개의 댓글