일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 문자열
- UnrealEngine
- 워크플로
- C++
- FSM
- 유니티
- 내일배움캠프
- UE4
- unityui
- Firebase
- c#
- QueryDSL
- Unity
- 프로그래머스
- 스파르타내일배움캠프TIL
- 스택
- 이분탐색
- 순열
- 언리얼엔진
- Inventory
- Unity2D
- 유클리드호제법
- 구현
- Photon
- 포톤
- 스파르타내일배움캠프
- Unity3d
- BFS
- 해시
- 알고리즘
Archives
- Today
- Total
개발 낙서장
[프로그래머스][MySQL] 서울에 위치한 식당 목록 출력하기 본문
서울에 위치한 식당 목록 출력하기
https://school.programmers.co.kr/learn/courses/30/lessons/131118
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
풀이 방법
식당 정보가 담겨있는 REST_INFO 테이블, 식당의 리뷰 정보가 담겨있는 REST_REVIEW 테이블 두 개를 JOIN해서 출력하는 문제다.
REST_REVIEW 테이블이 REST_INFO 테이블의 REST_ID 칼럼을 참조키로 사용하고 있기 때문에 REST_ID를 조건으로 JOIN하면 된다.
주의할 점은 리뷰 점수의 평균값을 출력해야 하기에 GROUP BY 절로 묶어야 하고
평균값을 소수점 세 번재 자리에서 반올림해야 하기에 ROUND 함수를 사용해야 한다.
소스 코드
더보기
SELECT RI.REST_ID, RI.REST_NAME, RI.FOOD_TYPE, RI.FAVORITES, RI.ADDRESS, ROUND(AVG(RR.REVIEW_SCORE), 2) REVIEW_AVG_SCORE
FROM REST_REVIEW RR
LEFT JOIN REST_INFO RI ON RI.REST_ID = RR.REST_ID
WHERE RI.ADDRESS LIKE "서울%"
GROUP BY RI.REST_ID
ORDER BY REVIEW_AVG_SCORE DESC, RI.FAVORITES DESC;
'Algorithm > Programmers' 카테고리의 다른 글
[프로그래머스][JAVA] Summer/Winter Coding(~2018) 예산 (1) | 2024.11.29 |
---|---|
[프로그래머스][MySQL] 주문량이 많은 아이스크림들 조회하기 (0) | 2024.11.29 |
[프로그래머스][JAVA] 가장 큰 수 (0) | 2024.11.26 |
[프로그래머스][JAVA] 둘만의 암호 (0) | 2024.02.02 |
[프로그래머스][JAVA] 문자열 나누기 (0) | 2024.01.30 |
Comments