[SQL] 프로그래머스 77487: 헤비 유저가 소유한 장소

오도원공육사·2021년 10월 16일
0

SQL

목록 보기
14/15

문제 출처.

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

1. GROUP BY + IN

  • GROUP BY를 통해서 HOST_ID 별로 소유한 공간 수 체크
  • HAVING으로 2이상 조건 조회
  • 위 조건에 부합하는 HOST_ID리스트에 포함(IN)되는 HOST_ID만 출력
SELECT * FROM PLACES AS PL1
WHERE PL1.HOST_ID IN (
	SELECT HOST_ID FROM PLACES
	GROUP BY HOST_ID
	HAVING COUNT(*) >= 2
) ORDER BY ID;

2. GROUP BY + EXISTS

  • GROUP BYHAVING으로 2개 이상 공간 소유 조회
  • 해당하는 HOST_ID가 존재(EXISTS)하는지 체크
SELECT * FROM PLACES AS PL1
WHERE EXISTS (
	SELECT 1 FROM PLACES AS PL2
	WHERE PL1.HOST_ID = PL2.HOST_ID
	GROUP BY HOST_ID
	HAVING COUNT(*) >= 2
) ORDER BY ID;
profile
잘 먹고 잘살기

0개의 댓글