파란색가운의 개발 블로그
[SQL 고득점 Kit] SELECT - 서울에 위치한 식당 목록 출력하기 본문
https://school.programmers.co.kr/learn/courses/30/lessons/131118
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
난이도 : 중 ~ 중하
LV4 치곤 쉬웠지만
테이블이 길어서 맨 왼쪽 항목 1개를 자꾸 놓쳐서 왜 안되나 10번 고민했는데 답 보고 아,,했다
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
JOIN REST_REVIEW
ON REST_INFO.REST_ID = REST_REVIEW.REST_ID AND REST_INFO.ADDRESS LIKE "서울%"
GROUP BY REST_INFO.REST_ID
ORDER BY ROUND(AVG(REST_REVIEW.REVIEW_SCORE),2) DESC, REST_INFO.FAVORITES DESC;
그래도 답보고 한거 없어서 뿌듯
사실 JOIN에서는 기본키 - 외래키 조건만 사용하고
GROUP BY -> HAVING에서 ADDRESS 조건을 넣어주는게 더 깔끔할 것 같다
1. ROUND 함수 -> 반올림 (원하는 자리수 지정 가능)
2. REST_ID별로 GROUP을 지어서 AVG 내기
'알고리즘 문제 풀이 > 프로그래머스' 카테고리의 다른 글
[SQL 고득점 Kit] SELECT - 모든 레코드 조회하기 (0) | 2024.06.27 |
---|---|
[SQL 고득점 Kit] SELECT - 재구매가 일어난 상품과 회원 리스트 구하기 (0) | 2024.06.27 |
[SQL 고득점 Kit] SELECT - 12세 이하인 여자 환자 목록 출력하기 (0) | 2024.06.25 |
[SQL 고득점 Kit] SELECT - 강원도에 위치한 생산공장 목록 출력하기 (0) | 2024.06.24 |
[SQL 고득점 Kit] SELECT - 인기있는 아이스크림 (0) | 2024.06.24 |