SELECT REST_ID, REST_NAME, FOOD_TYPE, FAVORITES, ADDRESS, round(AVG(REVIEW_SCORE),-1)
FROM REST_INFO ri inner join REST_REVIEW rr
on ri.REST_ID = rr.REST_ID
order by round(AVG(REVIEW_SCORE),-1) desc, FAVORITES desc 인데
리뷰 평균점수는 소수점 세 번째 자리에서 반올림한다.
결과는 평균점수를 기준으로 내림차순 정렬하고, 평균점수가 같다면 즐겨찾기 수를 기준으로 내림차순정렬해라
인라인뷰를 이용해야하는것인가?
-> 인라인뷰와 별칭을 이용해서 값을 뽑아내야함 || round : 반올림 사용
-> gruop by를 사용하지 않으면 오류가 발생함 -> Rest_ID로 하나로 묶어줌
-> inner join으로 사용하려면 별칭 값은 당연히 줘야 되는 부분임.
-> 서울로 시작하는 테이블을 검색 하는 것이기 떄문에 where 절에 대한 처리는 Like % 이용해서 작성함.
SELECT rr.REST_ID, ri.REST_NAME, ri.FOOD_TYPE, ri.FAVORITES, ri.ADDRESS, rr.SCORE
FROM REST_INFO ri inner join (SELECT REST_ID, round(AVG(REVIEW_SCORE),2) as SCORE from REST_REVIEW group by REST_ID)rr
on ri.REST_ID = rr.REST_ID
where ri.ADDRESS Like '서울%'
order by rr.SCORE desc, ri.FAVORITES desc