문제
https://school.programmers.co.kr/learn/courses/30/lessons/131123
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이
JOIN과 GROUP BY를 사용하면 풀 수 있는 문제이다.
필자는 서브쿼리로 해결할 수 있었는데 서브쿼리에서 즐겨찾기수가 가장 많은 식당의 정보들을(MAX 함수 사용) GROUP BY로 음식 종류별로 조회할 수 있도록 해주고 메인쿼리에서 서브쿼리에서 조회된 ROW들에 대해서 확인해주면 문제를 해결할 수 있다.
쿼리
SELECT
A.FOOD_TYPE,
A.REST_ID,
A.REST_NAME,
A.FAVORITES
FROM
REST_INFO AS A,
(SELECT
FOOD_TYPE,
REST_ID,
MAX(FAVORITES) AS FAVORITES
FROM
REST_INFO
GROUP BY
FOOD_TYPE
) AS B
WHERE
A.FOOD_TYPE = B.FOOD_TYPE
AND
A.FAVORITES = B.FAVORITES
ORDER BY
FOOD_TYPE DESC
'프로그래머스-SQL' 카테고리의 다른 글
[프로그래머스-SQL] 프로그래머스 SQL Level2 성분으로 구분한 아이스크림 총 주문량 MySQL (0) | 2022.10.28 |
---|---|
[프로그래머스-SQL] 프로그래머스 SQL Level4 식품분류별 가장 비싼 식품의 정보 조회하기 MySQL (0) | 2022.10.13 |
[프로그래머스-SQL] 프로그래머스 SQL Level1 경기도에 위치한 식품창고 목록 출력하기 MySQL (0) | 2022.10.12 |
[프로그래머스-SQL] 프로그래머스 SQL Level2 가격이 제일 비싼 식품의 정보 출력하기 MySQL (0) | 2022.10.11 |
[프로그래머스-SQL] 프로그래머스 SQL Level4 서울에 위치한 식당 목록 출력하기 MySQL (0) | 2022.10.11 |