프로그래머스 SQL 기록

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

우히힝 2022. 4. 12. 21:12

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

 

코딩테스트 연습 - 헤비 유저가 소유한 장소

PLACES 테이블은 공간 임대 서비스에 등록된 공간의 정보를 담은 테이블입니다. PLACES 테이블의 구조는 다음과 같으며 ID, NAME, HOST_ID는 각각 공간의 아이디, 이름, 공간을 소유한 유저의 아이디를

programmers.co.kr

 

 

HOST_ID 가 중복으로 존재하는 ROW를 전부 가져오면 되는 문제였습니다.

 

초반에 GROUP BY COUNT로 해결을 하려했지만 중복이 전부 제거되는걸 잊고있었는데

 

오히려 좋다. 헤비 유저의 HOST_ID를 전부 추출하여 서브쿼리로 재활용하여 문제를 해결하였습니다.

 

SELECT * 
FROM PLACES OP 
WHERE OP.HOST_ID IN 
    (SELECT p.HOST_ID 
     FROM PLACES p 
     GROUP BY p.HOST_ID 
     HAVING COUNT(p.HOST_ID) > 1)