데이터 그룹핑

KOO HEESEUNG·2021년 10월 19일
0

SQL 기초

목록 보기
8/8
post-thumbnail

그룹 생성하기

그룹은 SELECT 문에서 GROUP BY 절을 사용하여 생성할 수 있다.
GROUP BY 절을 사용하여 데이터들을 원하는 그룹으로 나눌 수 있다.
그룹함수와 함께 사용되는 상수는 GROUP BY 절에 추가하지 않아도 된다.

SELECT vend_id, COUNT(*) AS num_prods
FROM Products
GROUP BY vend_id;

ORDER BY vs GROUP BY

ORDER BY : 결과 정렬. 가져오지 않은 열도 사용 가능. 필수 X.
GROUP BY : 행 그룹핑. 선택된 열이나 수식만 사용 가능하고, 꼭 사용해야 함. 그룹 함수와 함께 사용하는 열 또는 수식이 있는 경우 필수.

GROUP BY 절을 사용할 때마다 ORDER BY 절을 명시하자!

그룹 필터링

HAVING 절을 사용하여 그룹핑한 결과를 기반으로 필터링할 수 있다.

WHERE vs HAVING

WHERE 절에서 사용할 수 있는 것들은 HAVING 에서 그대로 적용할 수 있다.
WHERE : 행을 필터링. 데이터가 그룹핑되기 전에 필터링한다.
HAVING : 그룹을 필터링. 데이터가 그룹핑된 후에 필터링한다.

SELECT cust_id, COUNT(*) AS orders
FROM Orders
GROUP BY cust_id
HAVING COUNT(*) >= 2; -- 2개 이상 주문한 그룹만

SELECT 문 순서

SELECT
FROM
WHERE
GROUP BY
HAVING
ORDER BY

참고

0개의 댓글