SELECT p.product_code, sum(p.price*os.sales_amount) as sales
from product p
inner join offline_sale os on p.product_id = os.product_id
group by 1
order by 2 desc, 1 asc
문제 :
PRODUCT 테이블과 OFFLINE_SALE 테이블에서 상품코드 별 매출액(판매가 * 판매량) 합계를 출력하는 SQL문을 작성해주세요. 결과는 매출액을 기준으로 내림차순 정렬해주시고 매출액이 같다면 상품코드를 기준으로 오름차순 정렬해주세요.
해결 방식 :
-- join product / offline_sale 테이블
-- 상품코드 별 매출액(판매가 * 판매액)
-- 매출액 desc, 상품코드 asc
결과 : 정답
답안 :
SELECT p.product_code, sum(p.price*os.sales_amount) as sales
from product p
inner join offline_sale os on p.product_id = os.product_id
group by 1
order by 2 desc, 1 asc
다른 풀이법 :
'SQL > 프로그래머스' 카테고리의 다른 글
[LV.2] 입양 시각 구하기(1) (0) | 2024.12.07 |
---|---|
[Lv.2] 노선별 평균 역 사이 거리 조회하기 (concat, round) (0) | 2024.11.23 |
[Lv.2] 카테고리 별 상품 개수 구하기 (STRING, 문자열 함수) (0) | 2024.11.07 |
[Lv.3] 대여 기록이 존재하는 자동차 리스트 구하기 (LEFT JOIN, GROUP BY) (0) | 2024.11.07 |
[Lv.2] 가격이 제일 비싼 식품의 정보 출력하기 (쿼리 실행 순서) (0) | 2024.11.06 |