[문제]
https://school.programmers.co.kr/learn/courses/30/lessons/131123
[풀이]
GROUP BY와 서브쿼리를 이용한다.
이때 그냥 HAVING MAX(FAVORITES) 을 하게 되면 이미 GROUP BY를 한 결과값(아무 조건이 없을 때 가장 상단에 위치한 것이 선택됨) 중에서 HAVING 을 적용하는 것이기 때문에 정답이 안된다!!
[코드]
SELECT FOOD_TYPE, REST_ID, REST_NAME, FAVORITES
FROM REST_INFO
WHERE (FOOD_TYPE, FAVORITES) IN (SELECT FOOD_TYPE, MAX(FAVORITES) FROM REST_INFO GROUP BY FOOD_TYPE)
ORDER BY FOOD_TYPE DESC;
'알고리즘 공부 및 문제 풀이 > 프로그래머스(PRO)' 카테고리의 다른 글
[pro] 프로그래머스 SQL level3 대여 횟수가 많은 자동차들의 월별 대여 횟수 구하기 - GROUP BY (0) | 2023.04.27 |
---|---|
[pro] 프로그래머스 SQL level3 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기 - GROUP BY (0) | 2023.04.27 |
[pro] 프로그래머스 SQL level2 가격대 별 상품 개수 구하기 - GROUP BY (0) | 2023.04.27 |
[pro] 프로그래머스 SQL level2 가격이 제일 비싼 식품의 정보 출력하기 - MAX (0) | 2023.04.27 |
[pro] 프로그래머스 SQL level2 재구매가 일어난 상품과 회원 리스트 구하기 - SELECT (0) | 2023.04.27 |