SQL/SELECT

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

이런개발 2025. 2. 27. 09:30

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

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

문제 풀이

  1. GROUP BY 키워드로 회원 ID와 상품 ID를 그룹핑한다. 이때 그룹핑된 행이 2개 이상이면 재구매가 일어난 것이므로 HAVING 키워드로 조건을 걸어준다.
  2. 회원 ID를 기준으로 오름차순, 상품 ID를 기준으로 내림차순 정렬한다.
  3. 회원 ID와 상품 ID를 조회한다.
SELECT 
    USER_ID, 
    PRODUCT_ID
FROM 
    ONLINE_SALE
GROUP BY 
    USER_ID, 
    PRODUCT_ID
        HAVING COUNT(*) >= 2
ORDER BY 
    1, 2 DESC