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

2025. 6. 10. 16:34·알고리즘/SQL
728x90
반응형

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

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

문제 유형

  • SQL
  • JOIN

문제 난이도

  • LEV4

 

문제 분석

두 개의 테이블이 주어진다.
MEMBER_PROFILE: 고객의 정보
REST_REVIEW: 식당의 리뷰 정보

구하고자 하는 SQL
- 리뷰를 가장 많이 작성한 회원들의 리뷰들을 조회
- 회원 이름, 리뷰 텍스트, 리뷰 작성일
- 리뷰 작성일을 기준으로 오름차순, 리뷰 텍스트 기준으놀 오름차순

두 개의 CTE(Common Table Expression)를 활용해서 가장 많은 리뷰의 MEMER_ID를 구하고, 해당하는 회원의 이름과 리뷰 내용, 작성일을 작성한다.

DATE_FORMAT(변환하고자 하는 날짜, "날짜 형식")으로 형식에 맞게 출력하도록 한다.

 

LIMIT 1을 사용하면 안되는 이유

만약, 리뷰의 개수가 동일한 회원이 여러 명인데, 1명만 출력하게 되므로 단순하게 LIMIT을 사용하면 안된다.

 

 

전체 코드

WITH REVIEW_CNT AS (
    SELECT MEMBER_ID, REVIEW_TEXT, REVIEW_DATE, COUNT(*) AS CNT
    FROM REST_REVIEW
    GROUP BY MEMBER_ID
),

MAX_REVIEW AS (
    SELECT MEMBER_ID
    FROM REVIEW_CNT
    WHERE CNT = (SELECT MAX(CNT) FROM REVIEW_CNT)
)

SELECT A.MEMBER_NAME, B.REVIEW_TEXT, DATE_FORMAT(B.REVIEW_DATE, "%Y-%m-%d") AS REVIEW_DATE
FROM MEMBER_PROFILE A
JOIN REST_REVIEW B ON A.MEMBER_ID = B.MEMBER_ID
JOIN MAX_REVIEW C ON B.MEMBER_ID = C.MEMBER_ID
ORDER BY REVIEW_DATE, B.REVIEW_TEXT
728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'알고리즘 > SQL' 카테고리의 다른 글

[SQL] 자동차 대여 기록 별 금액 구하기  (1) 2025.06.11
[SQL] 5월 식품들의 총매출 조회하기  (0) 2025.06.10
[SQL] 노선별 평균 역 사이 거리 조회하기  (1) 2025.06.09
[SQL] 조건에 맞는 사원 정보 조회하기  (0) 2025.05.16
[SQL] 입양 시각 구하기 (2)  (0) 2025.05.09
'알고리즘/SQL' 카테고리의 다른 글
  • [SQL] 자동차 대여 기록 별 금액 구하기
  • [SQL] 5월 식품들의 총매출 조회하기
  • [SQL] 노선별 평균 역 사이 거리 조회하기
  • [SQL] 조건에 맞는 사원 정보 조회하기
moongi
moongi
프로그래밍 관련 공부를 정리하는 블로그
  • moongi
    By_Me
    moongi
  • 전체
    오늘
    어제
    • 공부 (83) N
      • 알고리즘 (49) N
        • 기업별 유사 문제 (2)
        • Sudo Code (5)
        • 예외처리 (1)
        • SQL (9)
      • spring boot (6)
        • jpa (0)
        • querydsl (0)
        • MVC pattern (0)
        • setting (2)
      • 취준 (3)
      • CS (8)
        • 디자인패턴 (1)
        • 데이터베이스 (4)
        • 네트워크 (3)
        • 운영체제 (0)
  • 인기 글

  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.3
moongi
[SQL] 그룹별 조건에 맞는 식당 목록 출력하기
상단으로

티스토리툴바