주어진 문제는 다음과 같다.
문제가 참 길고 복잡하다. 우선 정리부터 해보자.
테이블은 총 두 개다.
1. FIRST_HALF
2. ICECREAM_INFO
두 테이블은 FLAVOR 로 엮여있다.
총 주문량이 큰 순서대로라는 말은 내림차순을 뜻한다.
우선 나는 두 테이블을 합치기로 했다. 합치는 방식은 join on 방식을 사용했다.
내가 쓴 답은 다음과 같았다.
SELECT FIRST_HALF.FLAVOR
// 구하는 것은 FIRST_HALF 테이블의 FLAVOR
FROM FIRST_HALF 테이블에
// FIRST_HALF 테이블에
JOIN ICECREAM_INFO
// ICECREAM_INFO 테이블을 합친다.
ON FIRST_HALF.FLAVOR = ICECREAM_INFO.FLAVOR
// 두 테이블은 FLAVOR 컬럼으로 엮여있다.
WHERE TOTAL_ORDER > 3000
// 합친 테이블에서 TOTAL_ORDER 가 3000 초과이며,
AND INGREDIENT_TYPE = 'fruit_based'
// 그리고 INGREDIENT_TYPE이 'fruit_based' 인 것들만 고른다.
ORDER BY TOTAL_ORDER DESC;
// 결과값을 TOTAL_ORDER 내림차순으로 정렬.
특정 컬럼으로 테이블 합치는 법.
FROM 테이블1
JOIN 테이블2
ON 테이블1.외래키 = 테이블2.기본키;