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

2024. 4. 26. 17:59코딩 테스트

문제

 

 

개념
  •  GROUP BY : 해당 열을 그룹화하여 나타내주며 2개 이상도 가능하다.
    • 2개 이상 열을 그룹화 하면 해당 열들의 값이 모두 같은 행들이 같은 그룹이다.   
  • HAVING : 집계 후 결과 값을 필터링해 준다. 
  • ORDER BY : 값을 오름차순으로 정렬시켜주며 뒤에 DESC를 쓰면 내림차순으로 정렬한다. 
    • 문제 풀 때 정렬 조건을 까먹지 말자.

 

정답
SELECT USER_ID, PRODUCT_ID
FROM ONLINE_SALE
GROUP BY USER_ID, PRODUCT_ID
HAVING COUNT(USER_ID) > 1
ORDER BY 1, 2 DESC