해답
select f.flavor
from first_half as f
right outer join icecream_info as i
on f.flavor = i.flavor
where f.total_order >= 3000 and i.ingredient_type = 'fruit_based'
order by f.total_order desc;
해설
두 개의 테이블 조회
해당 문제는 두 개의 테이블을 제시하고 있습니다.
1. first_half 테이블

- icecream_info 테이블

- 상반기 아이스크림 총 주문량은 first_half 테이블에서 찾을 수 있고, 아이스크림 주 성분이 과일인 것은 icecream_info 테이블에서 찾을 수 있습니다.
두 개의 테이블 합치기
두 개의 테이블을 합쳐보겠습니다.
SELECT *
FROM FIRST_HALF AS f
RIGHT OUTER JOIN icecream_info AS i
ON f.flavor = i.flavor;

SELECT * 의 경우 합쳐진 두 개의 테이블에 의해 FLAVOR 가 2개로 나타나게 됩니다.
SELECT f.SHIPMENT_ID, f.FLAVOR, f.TOTAL_ORDER, i.INGREDIENT_TYPE
FROM FIRST_HALF AS f
RIGHT OUTER JOIN icecream_info AS i
ON f.flavor = i.flavor;
위 쿼리문을 통해 FLAVOR행을 하나만 나타나게 정리했습니다.

문제의 조건
- 상반기 아이스크림 총주문량(TOTAL_ORDER)이 3,000보다 높으면서 f.total_order > = 3000
- 아이스크림의 성분(INGREDIENT_TYPE)이 과일인 i.ingredient_type = ‘fruit_based’
- 아이스크림 맛(FLAVOR)을 총 주문량이 큰 순서 대로 조회 select f.flavor order by f.total_order DESC
SELECT f.FLAVOR
FROM FIRST_HALF AS f
RIGHT OUTER JOIN icecream_info AS i
ON f.flavor = i.flavor
WHERE f.total_order >= 3000 AND i.ingredient_type = 'fruit_based'
ORDER BY f.total_order DESC;

결과
결과로 상반기 아이스크림 총주문량이 3,000 보다 높으면서 성분이 과일인
아이스크림 strawberry가 나타났습니다.
만약 f. total_order 에서 peach 가 3,200 이었다면
FLAVOR는 peach 아래에 strawberry 가 위치했을 것 입니다.
소감
두 개의 테이블을 이용해 조회를 하게 되었는데
RIGHT OUTER JOIN 을 사용하게 되어 당황했었습니다.
프로젝트에 들어가기 전까지 JOIN에 대해서 더 알아봐야겠다는 생각이 들었습니다.
Share article