코딩테스트

프로그래머스 헤비 유저가 소유한 장소

코드 죄수 2023. 9. 7. 12:10

문제가 원하는 것은 그저 공간을 둘 이상 등록한 사람을 찾는 것이다.

 

위 테이블을 보고 sql을 작성하면 

 

먼저 테이블에 HOST_ID가 둘 이상 존재하는 사람을 찾으면 

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

GROUP BY로 HOST_ID를 그룹화하고 HAVING을 이용하여 헤비 유저의 HOST_ID만을 조회한다.

 

그다음 위의 쿼리를 사용하여 해당하는 헤비유저를 아이디순으로 정렬하여 출력시키면 된다.

SELECT *
FROM PLACES
WHERE HOST_ID IN (
    SELECT HOST_ID
    FROM PLACES
    GROUP BY HOST_ID HAVING COUNT(HOST_ID) >= 2
    )
ORDER BY ID ASC;