Q. REST_INFO와 REST_REVIEW 테이블에서 서울에 위치한 식당들의 식당 ID, 식당 이름, 음식 종류, 즐겨찾기수, 주소, 리뷰 평균 점수를 조회하는 SQL문을 작성해주세요. 이때 리뷰 평균점수는 소수점 세 번째 자리에서 반올림 해주시고 결과는 평균점수를 기준으로 내림차순 정렬해주시고, 평균점수가 같다면 즐겨찾기수를 기준으로 내림차순 정렬해주세요.
SELECT I.REST_ID, I.REST_NAME, I.FOOD_TYPE, I.FAVORITES, I.ADDRESS, ROUND(AVG(R.REVIEW_SCORE),2) AS SCORE
FROM
REST_INFO AS I
JOIN
REST_REVIEW AS R
ON
I.REST_ID = R.REST_ID
WHERE
I.ADDRESS LIKE "서울%"
GROUP BY
I.REST_ID
ORDER BY
SCORE DESC, I.FAVORITES DESC
- ROUND("값", "자릿수") ex> ROUND("exp", 2) -> 2번째 자리까지 표시 (3번째에서 반올림)
- AS -> 약어 사용
- JOIN ON -> 테이블 결합, ON으로 기준 열 지정
- LIKE -> 문자열 찾기
- GROUP_BY -> 집계함수(COUNT, AVG, ...) 와 같이 사용, 같은 REST_ID를 가진 행들을 하나의 그룹으로 묶는 역할
- ORDER_BY -> 쓴 순서대로 정렬, 내림차순할 거면 DESC
'코테준비' 카테고리의 다른 글
[SQL] 프로그래머스/재구매가 일어난 상품과 회원 리스트 구하기 (0) | 2025.03.23 |
---|---|
LCS(Longest Common Substring) 알고리즘 (1) | 2024.09.18 |
[알고리즘] 위상정렬 (0) | 2024.09.18 |
[softeer/c++] 좌석 관리/string 비교 (0) | 2024.09.12 |
[그래프] 백준 1389 c++ 케빈 베이컨의 6단계 법칙 (0) | 2024.03.19 |