문제 풀이/프로그래머스

[프로그래머스] 재구매가 일어난 상품과 회원 리스트 구하기(SQL)

27200 2025. 8. 20. 20:07

문제

http://school.programmers.co.kr/learn/courses/30/lessons/131536


풀이(16분)

SELECT USER_ID, PRODUCT_ID
FROM ONLINE_SALE
GROUP BY USER_ID, PRODUCT_ID
HAVING COUNT(*) >= 2
ORDER BY USER_ID ASC, PRODUCT_ID DESC;

문제 풀이 전략

 

SELECT를 할 때, USER_ID와 PRODUCT_ID가 쓰인다.

또한, 조건을 사용하는데 있어서도 동시에 쓰인다.

 

그렇기에 GROUP BY라는 절로 묶어준다.

이후 HAVING절은 GROUP절의 WHERE절같은 느낌으로 사용되는 것이다.