[프로그래머스_SQL] 서울에 위치한 식당 목록 출력하기
📜문제
https://school.programmers.co.kr/learn/courses/30/lessons/131118
📜정답
SELECT A.REST_ID,REST_NAME,FOOD_TYPE,FAVORITES,ADDRESS,ROUND(AVG(REVIEW_SCORE),2)AS SCORE
FROM REST_INFO A INNER JOIN REST_REVIEW B
ON A.REST_ID=B.REST_ID
GROUP BY A.REST_ID HAVING ADDRESS LIKE '서울%'
ORDER BY SCORE DESC,FAVORITES DESC
📜노트
- 컬럼명 LIKE ‘__부분일치값%’
%
: ‘모든 문자’라는 의미로 글자수 제한이 없음
_
: ‘한 글자’라는 의미로 글자수 제한이 있음
그리하여 ADDRESS LIKE '서울%'
일때 ‘서울’이라는 문자열이 포함된 부분일치를 찾는 뜻이다. 패턴은 %
를 사용했으므로 ‘서울’로 시작하는 대여 기간을 찾으며, 뒤로 몇 자의 문자가 있는지는 상관이 없다.
만약 _
을 사용한 ADDRESS LIKE '_서울%'
이라면 ‘서울’이라는 문자열 앞에 1개의 문자가 있는 문자열을 찾게 된다.
- 평균 함수
AVG
함수안에 필드명을 넣으면 필드값의 평균을 구하는 함수이다.