개발머해니

[프로그래머스] 주문량이 많은 아이스크림들 조회하기 본문

SQL

[프로그래머스] 주문량이 많은 아이스크림들 조회하기

왕행님 2024. 1. 9. 20:47
728x90
반응형

문제


https://school.programmers.co.kr/learn/courses/30/lessons/133027?language=oracle

 

 

정답


-- 아이스크림 가게의 상반기 주문 정보를 담은 FIRST_HALF
-- 7월의 아이스크림 주문 정보를 담은 JULY
-- (7월 아이스크림 총 주문량 + 상반기의 아이스크림 총 주문량) 
-- 상위 3개의 맛을 조회하는 SQL 문을 작성해주세요.
SELECT B.FLAVOR
FROM (
SELECT A.FLAVOR, SUM(A.TOTAL_ORDER) AS TOTAL_ORDER FROM (
SELECT FLAVOR, TOTAL_ORDER FROM FIRST_HALF
    UNION 
SELECT FLAVOR, TOTAL_ORDER FROM JULY  
) A
GROUP BY A.FLAVOR
ORDER BY TOTAL_ORDER DESC) B
WHERE ROWNUM < 4
  • UNION을 하면 중복값 제외, UNION ALL 을 쓰면 중복값 포함이다
  • GROUP BY 된 채로 ORDER BY를 사용할 수 있다!
SELECT A.FLAVOR, SUM(A.TOTAL_ORDER) AS TOTAL_ORDER FROM (
SELECT FLAVOR, TOTAL_ORDER FROM FIRST_HALF
    UNION 
SELECT FLAVOR, TOTAL_ORDER FROM JULY  
) A
GROUP BY A.FLAVOR
ORDER BY TOTAL_ORDER DESC

728x90
반응형