sql

mysql - 프로그래머스 131123 / 즐겨찾기가 가장 많은 식당 정보 출력하기

kdozlo 2024. 10. 2. 17:11

 

https://school.programmers.co.kr/learn/courses/30/lessons/131123

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

LV3

구현 방법

구해야 하는것이 두가지다.

첫번째로 음식 종류별 즐겨찾기가 가장 많은 가게 찾기

두번째로 즐겨 찾기가 가장 많은 가게의 정보 출력

 

첫번째는 group by로 해결하면 된다.

두번째는 첫번째로 나온 정보인 food_type과 favorites를 바탕으로 두 정보와 일치하는 가게를 찾아서 출력하면 된다.(서브 쿼리, in 사용)

코드

-- 즐겨찾기가 가장 많은 식당 정보 출력하기
-- https://school.programmers.co.kr/learn/courses/30/lessons/131123
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
;