https://school.programmers.co.kr/learn/courses/30/lessons/131118
REST_INFO와 REST_REVIEW 테이블에서 서울에 위치한 식당들의 식당 ID, 식당 이름, 음식 종류, 즐겨찾기수, 주소, 리뷰 평균 점수를 조회하는 SQL문을 작성해주세요.
이때 리뷰 평균점수는 소수점 세 번째 자리에서 반올림 해주시고 결과는 평균점수를 기준으로 내림차순 정렬해주시고, 평균점수가 같다면 즐겨찾기수를 기준으로 내림차순 정렬해주세요.
LIKE를 이용한 검색
LIKE '데이터%'
: 데이터로 시작하는 문자열LIKE '데이터_ _ _'
: 데이터로 시작하는 6자 길이의 문자열집계함수(AGGREGATE FUNCTION)
그룹별 검색 (GROUP BY)
SELECT 주문제품, SUM(수량) AS 총주문수량
FROM 주문
GROUP BY 주문제품
SELECT 속성명 AS 별칭
: 속성명 대신 별칭으로 출력됨.
ROUND(숫자, m)
: 숫자를 소숫점 m째 자리까지 반올림
ex) ROUND(5.36, 1)
--> 5.4
동등 조인
외부 조인 (outer-join)
SELECT ~~~
FROM Customer LEFT OUTER JOIN Orders ON Customer.custid = Orders.custid
# 동등 조인 사용
SELECT REST_INFO.REST_ID, REST_INFO.REST_NAME, REST_INFO.FOOD_TYPE, REST_INFO.FAVORITES, REST_INFO.ADDRESS, ROUND(AVG(REST_REVIEW.REVIEW_SCORE), 2) AS SCORE
FROM REST_INFO, REST_REVIEW
WHERE REST_INFO.REST_ID = REST_REVIEW.REST_ID AND REST_INFO.ADDRESS LIKE '서울%'
GROUP BY REST_INFO.REST_ID
ORDER BY SCORE DESC, FAVORITES DESC