[프로그래머스] ⭐⭐ 카테고리 별 도서 판매량 집계하기 (MySQL)
문제
코드
ver(1) - INNER JOIN 사용
SELECT B.CATEGORY,
SUM(BS.SALES) AS TOTAL_SALES
FROM BOOK_SALES AS BS
INNER
JOIN BOOK AS B
ON B.BOOK_ID = BS.BOOK_ID
WHERE BS.SALES_DATE
LIKE '2022-01%'
GROUP
BY B.CATEGORY
ORDER
BY B.CATEGORY
ver(2) - RIGHT JOIN 사용
SELECT B.CATEGORY, SUM(S.SALES) AS TOTAL_SALES
FROM BOOK AS B
RIGHT
JOIN BOOK_SALES AS S
ON B.BOOK_ID = S.BOOK_ID
WHERE LEFT(S.SALES_DATE, 7) = '2022-01' AND S.BOOK_ID IS NOT NULL
GROUP BY B.CATEGORY
ORDER BY B.CATEGORY
풀이
GROUP BY 절
데이터들을 원하는 그룹으로 나눌 수 있다.
- 컬럼 그룹화
SELECT 컬럼 FROM 테이블 WHERE 조건식 GROUP BY 그룹화할 컬럼;
- 컬럼 그룹화 후에 조건 처리
SELECT 컬럼 FROM 테이블 GROUP BY 그룹화할 컬럼 HAVING 조건식;
댓글남기기