Allen's 데이터 맛집
프로그래머스 lv. 4 : 서울에 위치한 식당 목록 출력하기 본문
문제
풀이
-- 서울 지역 음식점 정보 및 리뷰 평점 조회
SELECT
i.rest_id,
i.rest_name,
i.food_type,
i.favorites,
i.address,
ROUND(AVG(r.REVIEW_SCORE), 2) AS score
FROM
rest_info i
JOIN
rest_review r ON i.rest_id = r.rest_id
WHERE
i.address LIKE '서울%'
GROUP BY
rest_name
ORDER BY
score DESC, i.favorites DESC;
1. rest_info 테이블과 rest_review 테이블을 rest_id를 기준으로 조인하여 음식점 정보와 리뷰 정보를 결합합니다.
2. i.address LIKE '서울%'를 통해 주소가 '서울'로 시작하는 음식점들만 선택합니다.
3. GROUP BY rest_name을 통해 음식점 이름으로 그룹화합니다. 이는 같은 이름의 음식점이 여러 리뷰를 가질 수 있기 때문에 중복을 방지합니다.
4. ROUND(AVG(r.REVIEW_SCORE), 2)를 사용하여 리뷰 평점의 평균을 계산하고, 소수점 두 자리까지 반올림합니다.
5. ORDER BY score DESC, i.favorites DESC를 통해 평점이 높은 순서로 정렬하고, 평점이 같은 경우에는 즐겨찾기 수
(i.favorites)가 높은 순서로 정렬합니다.
이 쿼리를 실행하면 '서울'로 시작하는 음식점들 중에서 리뷰 평점이 높은 순서로 정렬된 결과가 나옵니다.
https://school.programmers.co.kr/learn/courses/30/lessons/131118
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr