문제에서 요구하는 것
7월 아이스크림 총 주문량과 상반기 아이스크림 총 주문량을 더한 값이 큰 순서대로 상위 3개의 맛 조회
나의 풀이
UNION ALL을 통해서 7월 아이스크림 총 주문량 테이블과 상반기 아이스크림 총 주문량 테이블을 합친다.
그 후 FLAVOR을 기준으로 데이터를 그룹화한다. 즉 FLAVOR컬럼이 동일한 값을 가진 행들을 하나의 그룹으로 묶는다.
FLAVOR로 그룹화 한 다음 집계함수 SUM으로 각 맛마다 총 합을 구한다.
이렇게 구한 테이블에서 ROWNUM <= 3 으로 상위 3개 테이블을 구한다.
코드
SELECT FLAVOR
FROM (
SELECT A.FLAVOR, SUM(A.TOTAL_ORDER) AS TOTAL_ORDER_SUM
FROM (
SELECT *
FROM FIRST_HALF
UNION ALL
SELECT *
FROM JULY
) A
GROUP BY A.FLAVOR
ORDER BY SUM(A.TOTAL_ORDER) DESC
)
WHERE ROWNUM <= 3;
'ORACLE > 프로그래머스' 카테고리의 다른 글
[JOIN/ORACLE]자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 (0) | 2024.05.28 |
---|