728x90

-- 코드를 입력하세요
SELECT USER_ID, PRODUCT_ID
FROM ONLINE_SALE
GROUP BY USER_ID, PRODUCT_ID
HAVING COUNT(*)>=2
ORDER BY USER_ID, PRODUCT_ID DESC;

GROUP BY 의 실행 원리
GROUP BY 는 같은 값을 가진 행끼리 하나의 그룹으로 뭉쳐줍니다. 예시를 보면 좀 더 이해하시기 쉬울 겁니다. 예를 들어 우리가 서점을 운영하고 있다고 가정해봅시다. 우리는 우리 서점이 몇 가지의 장르의 책을 보유하고 있으며, 각 장르마다 몇 개의 책을 보유하고 있는지 알고 싶습니다. 우리의 데이터베이스는 1개의 테이블로 구성이 되어있는데, 해당 테이블은 책 이름과 장르 그리고 재고의 숫자를 저장하고 있습니다. 아래 그림은 GROUP BY 가 데이터를 그룹핑하는 것을 시각적으로 보여줍니다. 각 장르마다의 책 재고 개수를 알고 싶은 것이기 때문에, GROUP BY 가 장르를 기준으로 그룹을 나눈 후, 각 그룹에 해당하는 값(여기서는 재고의 총합)을 계산합니다.

'SQL' 카테고리의 다른 글
| 프로그래머스 최댓값 구하기(My SQL) (1) | 2024.01.03 |
|---|---|
| SQL 쿼리 실행 순서 (1) | 2024.01.02 |
| 프로그래머스 가격이 제일 비싼 식품의 정보 출력하기(MySQL) (0) | 2024.01.02 |
| 프로그래머스 조건에 맞는 회원수 구하기 (0) | 2024.01.02 |
| 프로그래머스 SQL 고득점 KIT 조건에 맞는 도서 출력하기 (0) | 2023.12.26 |