프로그래머스/My SQL

헤비 유저가 소유한 장소

싱싱한복초이 2024. 11. 25. 00:26

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(*)>=2)
ORDER BY ID;

 

[다른 풀이]

SELECT * FROM PLACES P1
WHERE EXISTS (
    SELECT 1 FROM PLACES P2
    WHERE P1.HOST_ID = P2.HOST_ID
    GROUP BY HOST_ID
    HAVING COUNT(ID) >= 2
)
ORDER BY ID ASC;

 

-출처

https://velog.io/@rgunny/SQLProgrammers-%ED%97%A4%EB%B9%84-%EC%9C%A0%EC%A0%80%EA%B0%80-%EC%86%8C%EC%9C%A0%ED%95%9C-%EC%9E%A5%EC%86%8C

 

[SQL/Programmers] 헤비 유저가 소유한 장소

프로그래머스 - 헤비 유저가 소유한 장소, 2021 Dev-Matching 웹 백앤드, SQL 풀이

velog.io

 

IN 과 EXISTS의 차이점