728x90
반응형
https://school.programmers.co.kr/learn/courses/30/lessons/131123
음식종류별로 즐겨찾기 수가 가장 많은 식당의 정보를 출력하는 문제이다.
- 음식종류별 → Group By를 통해 같은 음식 종류는 그룹화해준다.
- 즐겨찾기 수가 가장 많은 → MAX Method를 통해 최대값 추출
주의할 점, group by를 통해 그룹화한 후, max를 이용하여 최대값만 추출한다면 가장 많은 즐겨찾기 수 값을 출력할 수 있겠지만 그에 해당하는 그 외 정보들은 출력할 수 없다.
따라서 where절을 이용하여 (FOOD_TYPE, MAX(FAVORITES)) 값을 엮은 서브쿼리문을 사용한다.
서브쿼리문 결과에 해당하는 결과만 값을 추출할 수 있도록 한다.
-- 코드를 입력하세요
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 1 desc;
728x90
반응형
'CS > 데이터베이스' 카테고리의 다른 글
[SQL] 프로그래머스 : 입양 시간 구하기(2) (0) | 2023.04.28 |
---|---|
SQL - 날짜 관련 함수 (0) | 2023.02.22 |
SQL - SELECT : 여러 가지 조건 처리 (0) | 2023.02.21 |
SQL - SELECT : LIKE, NULL 대체 (0) | 2023.02.20 |
데이터베이스 : SQL (0) | 2023.01.21 |