728x90
문제
-- ONLINE_SALE 테이블에서
-- 동일한 회원이 동일한 상품을 재구매한 데이터를 구하여,
-- 재구매한 회원 ID와 재구매한 상품 ID를 출력
-- 결과는 회원 ID를 기준으로 오름차순 정렬
-- 회원 ID가 같다면 상품 ID를 기준으로 내림차순 정렬
풀이방법
-- 원하는 컬럼 지정
-- 두 컬럼에 대한 COUNT를 해줄 것이므로, 두 컬럼 모두 GROUP BY
-- 이때, AND쓰면 합쳐져버리므로, ','사용
-- 두 컬럼 모두 적용해야하므로 COUNT(*)
-- 중복 검사이므로, >1이면 2 이상이 되므로 중복 검사
나의 코드
SELECT USER_ID, PRODUCT_ID
FROM ONLINE_SALE
GROUP BY USER_ID, PRODUCT_ID
HAVING COUNT(*)>1
ORDER BY USER_ID ASC, PRODUCT_ID DESC
레퍼런스 코드
참고링크 : 츄르사려고 코딩하는 남자님의 티스토리
728x90
'알고리즘 저장소 (일반방식과 나만의 풀이) > SQL' 카테고리의 다른 글
[Programmers] no131530: 가격대 별 상품 개수 구하기 (0) | 2023.03.15 |
---|---|
[Programmers] no131533: 상품 별 오프라인 매출 구하기 (0) | 2023.03.15 |
[Programmers] no132202: 진료과별 총 예약 횟수 출력하기 (0) | 2023.03.15 |
[Programmers] no133026: 성분으로 구분한 아이스크림 총 주문량 (0) | 2023.03.15 |
[Programmers] no144854: 조건에 맞는 도서와 저자 리스트 출력하기 (1) | 2023.03.15 |