[Programmers] 주문량이 많은 아이스크림들 조회하기
정답
-- FIRST_HALF: SHIPMENT_ID, FLAVOR, TOTAL_ORDER
-- JULY: SHIPMENT_ID, FLAVOR, TOTAL_ORDER
SELECT T1.FLAVOR
FROM FIRST_HALF AS T1
JOIN (
SELECT FLAVOR, SUM(TOTAL_ORDER) AS TOTAL_ORDER
FROM JULY
GROUP BY FLAVOR
) AS T2 ON T1.FLAVOR = T2.FLAVOR
GROUP BY T1.FLAVOR
ORDER BY SUM(T1.TOTAL_ORDER) + T2.TOTAL_ORDER DESC
LIMIT 3;
✅ Point
- JULY에서 먼저 FLAVOR별 총 주문 수량을 집계해서 T2 서브쿼리 생성
- 이를 FIRST_HALF와 FLAVOR 기준으로
INNER JOIN
- 이를 FIRST_HALF와 FLAVOR 기준으로
정렬 후 LIMIT 3
으로 상위 3개만 출력 → ✅ 정확하고 간결한 접근