SQL 문제

문제 61. 서울에 위치한 식당 목록(난이도 5)

kagan-draca 2024. 7. 30. 15:07

 

문제의 내용이 길지만, 요구 사항을 바탕으로 잘 작성하면 쉽게 풀 수 있는 문제이다.

문제에서 '서울'에 위치한 식당들의 식당 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