문제
PRODUCT 테이블과 OFFLINE_SALE 테이블에서 상품코드 별 매출액(판매가 * 판매량) 합계를 출력하는 SQL문을 작성해주세요. 결과는 매출액을 기준으로 내림차순 정렬해주시고 매출액이 같다면 상품코드를 기준으로 오름차순 정렬해주세요.
나의 정답
#상품 코드별 매출액 (판매가 * 판매량) 의 합계
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_ID
ORDER BY SALES DESC, A.PRODUCT_CODE ASC
해당 문제 같은 경우 상품 코드 별 매출 총합을 구해야하는 문제였다. 기본적인 합계구하는 문제였기에 간단하게 기록해보고 싶어서 써봤다. 이번 문제에서는 먼저 PRODUCT 테이블 과 OFFLINE_SALE 테이블을 JOIN 한 후 PRODUCT_ID에 따라 그룹별로 나누어 주었다. 그 후 SUM 함수를 이용해 그룹 별 판매가 * 판매량을 구해 조회하는 문제 였다.
이때 알아야 할 것은 SUM 함수는 그룹 별로 적용 된다는 것이 중요한 점 인 것 같다.
문제 출처 <프로그래머스 SQL>
https://school.programmers.co.kr/learn/courses/30/lessons/131533
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
'SQL' 카테고리의 다른 글
| [SQL] 간단한 SQL WITH 구문 복습 (0) | 2023.08.21 |
|---|---|
| [SQL] 간단한 SQL OUTER JOIN 구문 복습하기 (0) | 2023.08.03 |
| [SQL] 간단한 SQL COUNT 구문 복습 (3) | 2023.07.27 |
| [SQL] 간단한 SQL 구문 NULL값 처리하는 방법 (1) | 2023.07.25 |
| [SQL] 간단한 SQL LIKE, REGEXP 구문 복습 (1) | 2023.07.21 |