코딩 테스트 연습/[프로그래머스][리트코드] MySQL

[LV.4] 헤비 유저가 소유한 장소

duswjd_data 2025. 7. 3. 08:13

문제

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

 

프로그래머스

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

programmers.co.kr


문제 설명

  • 헤비 유저: 공간을 둘 이상 등록한 사람
    헤비 유저가 등록한 공간의 정보를 아이디 순으로 조회하는 SQL문을 작성

정답 코드

SELECT ID, NAME, HOST_ID
FROM PLACES
WHERE HOST_ID IN (SELECT HOST_ID
                 FROM PLACES
                 GROUP BY HOST_ID
                 HAVING COUNT(HOST_ID)>=2)
ORDER BY ID

코드 설명

서브쿼리

SELECT HOST_ID
FROM PLACES
GROUP BY HOST_ID
HAVING COUNT(HOST_ID) >= 2

 

  • GROUP BY HOST_ID: HOST_ID 별로 그룹 묶기
    HAVING COUNT(HOST_ID) >= 2: 2개 이상의 공간을 등록한 HOST_ID만 추출 (헤비 유저)

메인쿼리

SELECT ID, NAME, HOST_ID
FROM PLACES
WHERE HOST_ID IN ( ... )
ORDER BY ID
  • 헤비 유저의 HOST_ID를 가진 공간만 조회
    ORDER BY ID: ID 순으로 결과 정렬