문제의 내용이 길지만, 요구 사항을 바탕으로 잘 작성하면 쉽게 풀 수 있는 문제이다.
문제에서 '서울'에 위치한 식당들의 식당 ID, 식당 이름, 음식 종류, 즐겨찾기수, 주소, 리뷰 평균 점수를
조회해야 하는데
혹시나, 구 읍, 로 등에 '서울'이라는 단어가 포함된 주소가 있을 수 있기 때문에
SUBSTRING()으로 '서울'이 들어가는 '시'만 추출했다.
GROUP BY 레스토랑 ID로 그룹을 묶지 않으면,
그 레스토랑의 평점 평균값을 정확하게 계산할 수 없다.
제출한 코드 :
SELECT A.REST_ID, A.REST_NAME, A.FOOD_TYPE, A.FAVORITES, A.ADDRESS, ROUND(AVG(B.REVIEW_SCORE), 2) AS SCORE
FROM REST_INFO AS A INNER JOIN REST_REVIEW AS B
ON A.REST_ID = B.REST_ID
WHERE SUBSTRING(A.ADDRESS, 1, 2) LIKE "%서울%"
GROUP BY A.REST_ID
ORDER BY SCORE DESC, A.FAVORITES DESC
'SQL 문제' 카테고리의 다른 글
문제 63. 자동차 평균 대여 기간 구하기(난이도 5) (0) | 2024.07.30 |
---|---|
문제 62. 자동차 대여 기록에서 장기/단기(난이도 7)(날짜 차이 구하기) (0) | 2024.07.30 |
문제 60. 년, 월, 성별 별 상품 구매 회원 수 구하기(난이도 7) (0) | 2024.07.30 |
문제 59. 자동차 대여 기록에서 대여 중/ 대여(난이도 10)(MAX와 BETWEEN) (0) | 2024.07.26 |
문제 58. 취소되지 않은 진료 예약 조회하기(난이도 7)(3중 JOIN) (0) | 2024.07.26 |