본문 바로가기

프로그래머스

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

728x90
반응형
SMALL


상품 별 오프라인 매출 구하기


 



문제 출처

코딩테스트 연습 - 상품 별 오프라인 매출 구하기 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr



Code

SELECT A.PRODUCT_CODE, SUM(A.PRICE * B.SALES_AMOUNT) AS SALES
FROM PRODUCT A JOIN OFFLINE_SALE B ON A.PRODUCT_ID = B.PRODUCT_ID
GROUP BY A.PRODUCT_CODE
ORDER BY SALES DESC, PRODUCT_CODE ASC


Code설명 & TIPS


풀이 방법!

 

PRODUCT 테이블과 OFFLINE_SALE 테이블에서 
--->FROM 절을 나타내 준다.


상품코드 별 매출액(판매가 * 판매량) 합계를 출력
--->출력이니 당연 SELECT문에서 나타내 줘야한다. 합계니 SUM을 이용한다. 그러나 서로다른 테이블에 있는 값을 곱하고 그 곱한 값들이 맞는 ID값에 따라 합을 구하는 것이니 무작정 SUM만하면 안되고 GROUP BY를 사용하여 CODE가 같은 값끼리 묶어서 SUM을 해줘야한다. 고로 조건은 맞는데 WHERE절을 사용하는 것이 아니다.


결과는 매출액을 기준으로 내림차순 정렬, 매출액이 같다면 상품코드를 기준으로 오름차순 정렬
---> 대표적으로 정렬을 표현해 준다 본문에 ASC는 그냥 심심해서 넣었다. 생략해도 된다.


 

 

 

오류나 궁금하신점은
아래 댓글로 알려주시면 감사하겠습니다.

 

 

 

 

728x90
반응형
LIST