본문 바로가기

Algorithm/프로그래머스

[SQL] 서울에 위치한 식당 목록 출력하기

https://school.programmers.co.kr/learn/courses/30/lessons/131118

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

1. 해결방법

1. 리뷰 테이블에 대해 식당 테이블을 join한다.
2. round와 avg를 이용해서 소수점 두 번째 자리와 평균을 낸다.
3. 식당 번호를 기준으로 group by를 한다.
4. group by에 조건을 추가하기 위해 having에 like로 주소에 '서울'에 해당하는 데이터를 선정한다.
5. 조건에 맞게 정렬한다.

 

 

2. 정답코드

select B.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
join REST_REVIEW as B
on A.REST_ID = B.REST_ID
GROUP BY B.REST_ID
HAVING A.ADDRESS LIKE '서울%'
order by SCORE desc, FAVORITES desc;