프로그래머스 SQL 고득전 kit를 풀어보고 정리한 내용입니다.
맞춘 정답과 틀린 경우 생각해내지 못한 문법 위주로 작성하였습니다.
정리 내용 출처는 아래를 참고해 주세요.
Lv.2 상품 별 오프라인 매출 구하기
작성 답안
각각 PRODUCT 테이블에서 PRODUCT_CODE와 PRICE를, OFFLINE_SALE 테이블에서 SALES_AMOUNT 컬럼 내용을 가져와 이용해야 하기 때문에 JOIND을 사용해 두 테이블의 데이터를 사용한다. 이때, PRODUCT 테이블과 OFFLINE_SALE에서 PRODUCT_ID가 일차하는 데이터들을 JOIN하여 결과 출력해야하기 때문에 INNER JOIN을 사용한다. 상품코드를 기준으로 매출액을 계산하여 출력함을 원하고 있기 때문에 GROUP BY를 이용하였고, ORDER BY 구문에 콤마(,)를 이용하여 두 가지의 정렬 조건을 넣어주었다.
SELECT P.PRODUCT_CODE, SUM(P.PRICE * O.SALES_AMOUNT) AS SALES
FROM PRODUCT AS P
INNER JOIN OFFLINE_SALE AS O ON P.PRODUCT_ID = O.PRODUCT_ID
GROUP BY P.PRODUCT_CODE
ORDER BY SALES DESC, P.PRODUCT_CODE ASC;
'SQL' 카테고리의 다른 글
[SQL] 프로그래머스 고득점 kit - String, Date / 오랜 기간 보호한 동물 2 (0) | 2024.04.08 |
---|---|
[SQL] 프로그래머스 고득점 kit - JOIN / 있었는데요 없었습니다 (0) | 2024.03.21 |
[SQL] 프로그래머스 고득점 kit - JOIN / 오랜 기간 보호한 동물 1 (0) | 2024.03.20 |
[SQL] 프로그래머스 고득점 kit - JOIN / 조건에 맞는 저자와 저자 리스트 출력하기 (0) | 2024.03.20 |
[SQL] 프로그래머스 고득점 kit - SELECT / 12세 이하인 여자 환자 목록 출력하기 (0) | 2024.03.18 |