[Level 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
I.REST_ID
ORDER BY
SCORE DESC, I.FAVORITES DESC;
SELECT
I.REST_ID,
I.REST_NAME,
I.FOOD_TYPE,
I.FAVORITES,
I.ADDRESS,
ROUND(AVG(R.REVIEW_SCORE), 2) AS SCORE
ROUND(AVG(R.REVIEW_SCORE), 2) AS SCORE: 리뷰 점수의 평균을 계산한 뒤, 소수점 두 번째 자리까지 반올림하여 SCORE라는 별칭으로 표시합니다. 이는 각 식당에 대한 리뷰 점수의 평균값을 나타냅니다.FROM
REST_INFO I
JOIN
REST_REVIEW R ON I.REST_ID = R.REST_ID
FROM REST_INFO I: 조회를 시작할 기본 테이블로 REST_INFO를 사용합니다. 여기서 I는 이 테이블의 별칭입니다.JOIN REST_REVIEW R ON I.REST_ID = R.REST_ID:WHERE
I.ADDRESS LIKE '서울%'
I.ADDRESS LIKE '서울%': 주소가 '서울'로 시작하는 식당만을 필터링하여 조회합니다. %는 와일드카드로, '서울'로 시작하는 어떤 문자열과도 일치한다는 것을 의미합니다.GROUP BY
I.REST_ID
GROUP BY I.REST_ID: REST_ID 별로 그룹화하여, 각 식당에 대한 리뷰 점수의 평균을 계산합니다. 이는 각 식당이 고유하게 식별되도록 보장합니다.ORDER BY
SCORE DESC, I.FAVORITES DESC;
ORDER BY SCORE DESC, I.FAVORITES DESC: 먼저 SCORE를 기준으로 내림차순 정렬하여 평균 점수가 높은 식당부터 표시합니다. 평균 점수가 같은 경우, FAVORITES (즐겨찾기 수)를 기준으로 내림차순 정렬하여 즐겨찾기 수가 많은 식당을 더 상위에 위치시킵니다.