GROUP BY는 SQL에서 데이터를 그룹화하고 각 그룹에 대해 집계 함수(예: COUNT, SUM, AVG 등)를 적용할 때 사용
GROUP BY a와 GROUP BY a, b, c의 차이는 그룹화 기준이 되는 열의 수에 있습니다.
이 차이는 결과 집합의 그룹 개수와 각 그룹의 상세 수준에 영향을 미칩니다.
SELECT a, COUNT(*) FROM table_name GROUP BY a;
SELECT a, b, c, COUNT(*) FROM table_name GROUP BY a, b, c;
다음과 같은 테이블이 있다고 가정해봅시다:
| 1 | A | X | M | 10 |
| 2 | A | X | N | 20 |
| 3 | A | Y | M | 30 |
| 4 | B | Y | M | 40 |
| 5 | B | Z | N | 50 |
SELECT a, COUNT(*) FROM table_name GROUP BY a;
| A | 3 |
| B | 2 |
SELECT a, b, c, COUNT(*) FROM table_name GROUP BY a, b, c;
| A | X | M | 1 |
| A | X | N | 1 |
| A | Y | M | 1 |
| B | Y | M | 1 |
| B | Z | N | 1 |
위의 예시에서 볼 수 있듯이,
GROUP BY a는 a 값에 따라 그룹화하여 덜 세밀한 결과를 제공하고,
GROUP BY a, b, c는 세 열의 조합에 따라 그룹화하여 더 세밀한 결과를 제공합니다.
| 데이터베이스 SQL 조건절 where 1=1 뜻 (0) | 2024.11.05 |
|---|---|
| 데이터베이스 SQL 서브쿼리 EXIST 함수 사용 (1) | 2024.11.03 |
| select 1 from 테이블 쿼리 사용하는 방법 (0) | 2024.11.02 |
| 데이터베이스 쿼리 범위 조회 LIMIT절 (feat.Cubrid 큐브리드) (0) | 2024.11.02 |
| 데이터베이스 SQL쿼리 rollup 합계 사용하는 방법 (1) | 2024.11.02 |