728x90
반응형
💬 내가 작성한 SQL 코드
SELECT USER_ID, PRODUCT_ID
FROM ONLINE_SALE
GROUP BY USER_ID, PRODUCT_ID
HAVING COUNT(PRODUCT_ID) >= 2 # 1이 아니라 2부터 ! 재구매
ORDER BY USER_ID ASC, PRODUCT_ID DESC;
# 1. 동일한 회원이 동일한 상품을 재구매한 데이터
# 2. 재구매한 회원 ID와 재구매한 상품 ID를 출력
# 3. 회원 ID를 기준으로 오름차순 정렬
# 4. 회원 ID가 같다면 상품 ID를 기준으로 내림차순 정렬
이번 문제는 HAVING을 사용하는 문제였다.
HAVING은 해석상 WHERE과 동일하다.
일반조건은 WHERE 절에 기술하지만, 그룹 함수를 포함한 조건은 HAVING 절에 기술한다.
재구매 회원을 확인할 때, COUNT(PRODUCT_ID) > 1 임을 알게되었다.
(2번 이상 구매해야지 재구매이기 때문!)
728x90
'자료구조 및 알고리즘 > 프로그래머스' 카테고리의 다른 글
프로그래머스 - 조건에 맞는 사용자와 총 거래금액 조회하기 (SQL) (0) | 2024.04.17 |
---|---|
프로그래머스 - 상위 n개 레코드 (SQL) (0) | 2024.04.17 |
프로그래머스 - 서울에 위치한 식당 목록 출력하기 (SQL) (0) | 2024.04.17 |
프로그래머스 - 강원도에 위치한 생산공장 목록 출력하기 (SQL) (0) | 2024.04.17 |
프로그래머스 - 인기있는 아이스크림 (SQL) (0) | 2024.04.17 |