문제:
REST_INFO 테이블에서 음식종류별로 즐겨찾기수가 가장 많은 식당의 음식 종류, ID, 식당 이름, 즐겨찾기수를 조회
- 결과는 음식 종류를 기준으로 내림차순 정렬
해결 방법:
1. GROUP BY, MAX() 를 사용해서 음식 종류별 즐겨찾기수의 최대값을 조회
2. INNER JOIN 으로 REST_INFO 와 앞선 테이블을 JOIN 하고 음식종류와 즐겨찾기수가 같은 식당을 조회
예시 코드:
SELECT RI.FOOD_TYPE, REST_ID, REST_NAME, FAVORITES
FROM REST_INFO AS RI
INNER JOIN
(SELECT FOOD_TYPE, MAX(FAVORITES) TOP_FAV
FROM REST_INFO
GROUP BY FOOD_TYPE) AS TOP
ON RI.FOOD_TYPE = TOP.FOOD_TYPE AND RI.FAVORITES = TOP.TOP_FAV
ORDER BY RI.FOOD_TYPE DESC
;
'[SQL] 연습' 카테고리의 다른 글
[MySQL] 프로그래머스 잡은 물고기 중 가장 큰 물고기의 길이 구하기 (1) | 2024.10.20 |
---|---|
[MySQL] 프로그래머스 물고기 종류별 잡은 수 구하기 (0) | 2024.10.19 |
[MySQL] 프로그래머스 가격대 별 상품 개수 구하기 (1) | 2024.10.12 |
[MySQL] 프로그래머스 5월 식품들의 총 매출 조회하기 (1) | 2024.10.10 |
[MySQL] 프로그래머스 식품분류별 가장 비싼 식품 정보 조회하기 (0) | 2024.10.06 |