반응형
https://school.programmers.co.kr/learn/courses/30/lessons/144856
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
SELECT
A.AUTHOR_ID AS AUTHOR_ID,
A.AUTHOR_NAME AS AUTHOR_NAME,
B.CATEGORY AS CATEGORY,
SUM(SALES* PRICE) AS TOTAL_SALES
FROM BOOK B
JOIN AUTHOR A
ON B.AUTHOR_ID = A.AUTHOR_ID
JOIN BOOK_SALES S
ON S.BOOK_ID = B.BOOK_ID
WHERE DATE_FORMAT(S.SALES_DATE, '%Y-%m') = '2022-01'
GROUP BY AUTHOR_ID, CATEGORY
ORDER BY AUTHOR_ID ASC, CATEGORY DESC
문제를 해결하기 위하여 먼저 3개의 테이블(BOOK, AUTHOR, BOOK_SALES)을 JOIN하였습니다.
WHERE 문에서는 2022년 1월 도서 데이터를 기준으로 데이터를 추출하기 위하여 DATE_FORMAT()함수를 사용하여 2022년 1월의 도서 데이터만 추출하였습니다.
GROUP BY문에서 저자(AUTHOR_ID) 별 카테고리(CATEGORY) 별로 그룹화를 하였고
SELECT 문에서 SUM()함수를 사용하여 저자 별, 카테고리별 매출액(TOTAL-SALES)를 구하였습니다.
- SUM()함수를 사용해서 저자, 카테고리로 묶인 데이터의 매출액들을 모두 더해주어야 합니다.
ORDER BY문에서 저자ID(AUTHOR_ID)를 기준으로 오름차순(ASC), 카테고리(CATEGORY) 기준으로 내림차순(DESC)정렬하여 출력하였습니다.
반응형
'코딩테스트' 카테고리의 다른 글
[코딩테스트] 프로그래머스 연속 부분 수열 합의 개수 파이썬(Python) (0) | 2022.12.21 |
---|---|
[코딩테스트] 프로그래머스 명예의 전당 (1) 파이썬(Python) (0) | 2022.12.20 |
[코딩테스트] 프로그래머스 조건에 맞는 도서와 저자 리스트 출력하기 MySQL (0) | 2022.12.19 |
[코딩테스트] 프로그래머스 카테고리 별 도서 판매량 집계하기 MySQL (0) | 2022.12.18 |
[코딩테스트] 프로그래머스 조건에 맞는 도서 리스트 출력하기 MySQL (0) | 2022.12.17 |