SQL/MY SQL 문제 풀이(프로그래머스)

[MYSQL] PROGRAMMERS_성분으로 구분한 아이스크림 총 주문량

몽총한몽이네 2024. 2. 21. 23:42
반응형

SELECT INGREDIENT_TYPE, sum(TOTAL_ORDER) as TOTAL_ORDER
FROM FIRST_HALF as f, ICECREAM_INFO as i
WHERE f.FLAVOR = i.FLAVOR
GROUP BY 1
ORDER BY TOTAL_ORDER asc

FLAVOR, INGREDITENT_TYPE 은 각각 아이스크림 맛, 아이스크림의 성분 타입을 나타낸다. INGREDIENT_TYPE에는 아이스크림의 주 성분이 설탕이면 sugar_based라고 입력되고, 아이스크림의 주 성분이 과일이면 fruit_based라고 입력된다. ICECREAM_INFO의 기본 키는 FLAVOR이다. ICECREAM_INFO테이블의 FLAVOR는 FIRST_HALF 테이블의 FLAVOR의 외래 키이다.

 

문제

상반기 동안 각 아이스크림 성분 타입과 성분 타입에 대한 아이스크림의 총주문량을 총주문량이 작은 순서대로 조회하는 SQL 문을 작성 후 총주문량을 나타내는 컬럼명은 TOTAL_ORDER로 지정하라

 

두테이블을 조인 하여 풀어낸다. 기본키와 외래키를 따로 주긴했지만 사실상 공통된 컬럼은 FLAVOR 밖에 없기에 해당 기준으로 조인을 해준다. 그 후 타입별 총합을 구해야 하므로 타입별로 GROUP 처리를 한 후 sum 처리를 한 후 정렬 하여 데이터를 추출 하였다.

 

 

반응형