SQL 프로그래머스_6일차_2 ROUND(AVG()), JOIN , GROUP BY , 정규화(REGEXP)
as_형준2023. 1. 3. 15:21
서울에 위치한 식당 목록 출력하기
문제
REST_INFO와REST_REVIEW테이블에서 서울에 위치한 식당들의 식당 ID, 식당 이름, 음식 종류, 즐겨찾기수, 주소, 리뷰 평균 점수를 조회하는 SQL문을 작성해주세요. 이때 리뷰 평균점수는 소수점 세 번째 자리에서 반올림 해주시고 결과는 평균점수를 기준으로 내림차순 정렬해주시고, 평균점수가 같다면 즐겨찾기수를 기준으로 내림차순 정렬해주세요.
테이블 설명
문제 예제
정답 코드
- GROUP으로 하기 전에 서울만 REGEXP로 서울로 시작하는 단어만 조회
그룹으로 묶은 후 그룹별 평균값을 만들었다
SELECT A.REST_ID,REST_NAME,FOOD_TYPE,FAVORITES,ADDRESS,ROUND(AVG(REVIEW_SCORE),2) AS SCORE
FROM REST_INFO A JOIN REST_REVIEW B
ON A.REST_ID= B.REST_ID
WHERE ADDRESS REGEXP '^서울'
GROUP BY A.REST_ID
ORDER BY SCORE DESC , FAVORITES DESC