그룹별 조건에 맞는 식당 목록 출력하기

는는·2023년 2월 8일
0

SQL - 문제 풀이

목록 보기
27/77

그룹별 조건에 맞는 식당 목록 출력하기

https://school.programmers.co.kr/learn/courses/30/lessons/131124

SELECT *
FROM member_profile A join rest_review B USING (member_id)

두 테이블을 JOIN 으로 합쳐줍니다.

리뷰가 가장 많이 작성한 회원의 리뷰를 조회 해야하기 때문에 서브쿼리를 이용해서 리뷰를 가장 많이 작성한 아이디를 불러옵니다.

WHERE member_id = (SELECT member_id FROM rest_review GROUP BY member_id ORDER BY count(member_id) DESC LIMIT 1)

LIMIT를 사용하는 이유는 1가지 데이터만 불러오기 위함입니다!
가장 많이 작성한 회원 아이디만 불어와야기 때문이죠

지정된 컬럼 회원 이름, 리뷰 텍스트, 리뷰 작성일 을 불러오고

SELECT member_name,review_text,date_format(review_date, '%Y-%m-%d') review_date

리뷰 작성일 기준으로 오름차순, 리뷰 텍스트 기준으로 오름차순 정렬해주면 정답입니다.

ORDER BY review_date, review_text

정답

SELECT member_name,review_text,date_format(review_date, '%Y-%m-%d') review_date
FROM member_profile A join rest_review B USING (member_id)
WHERE member_id =(SELECT member_id FROM rest_review GROUP BY member_id ORDER BY count(member_id) DESC LIMIT 1)
ORDER BY review_date, review_text

0개의 댓글