728x90
반응형
SQLD 2과목 SQL 기본 및 활용
<목차> |
GROUP BY, HAVING 절
1) GROUP BY 절: SQL 문에서 FROM 절과 WHERE 절 뒤에 오며, 데이터들을 작은 그룹으로 분류하여 소그룹에 대한 항목별로 통계 정보를 얻을 때 추가로 사용.
SELECT [DISTINCT] 칼럼명 [ALIAS 명] FROM 테이블명 [WHERE 조건식] [GROUP BY 칼럼(Column) 이나 표현식] [HAVING 그룹조건식]; |
2) HAVING 절: WHERE 절과 비슷하지만 그룹을 나타내는 결과 집합의 행에 조건이 적용
(WHERE 절은 집계 함수 사용할 수 없음.)
- WHERE 절의 조건 변경은 대상 데이터의 개수가 변경되므로 결과 데이터 값이 변경될 수 있지만,
HAVING 절의 조건 변경은 결과 데이터 변경은 없고 출력되는 레코드의 개수만 변경.
GROUP BY 절과 HAVING 절의 특성
- GROUP BY 절을 통해 소그룹별 기준을 정한 후, SELECT 절에 집계 함수 사용
- 집계 함수의 통계 정보는 NULL 값을 가진 행을 제외하고 수행
- GROUP BY 절에서는 SELECT 절과는 달리 ALIAS 명을 사용할 수 없음.
- 집계 함수는 WHERE 절에는 올 수 없음. (집계 함수를 사용할 수 있는 GROUP BY 절보다 WHERE 절이 먼저 수행됨)
- WHERE 절은 전체 데이터를 GROUP으로 나누기 전에 행들을 미리 제거 시킴
- HAVING 절은 GROUP BY 절의 기준 항목이나 소그룹의 집계 함수를 이용한 조건을 표시할 수 있다.
- GROUP BY 절에 의한 소그룹별로 만들어진 집계 데이터 중, HAVING 절에서 제한 조건을 두어 조건을 만족하는 내용만 출력
- HAVING 절은 일반적으로 GROUP BY 절 뒤에 위치
- 관계형 데이터베이스에 환경에서는 ORDER BY 절을 명시해야 데이터 정렬이 수행됨.
- HAVING 절은 SELECT 절에 사용되지 않은 칼럼이나 집계 함수가 아니더라도 GROUP BY 절의 기준 항목이나 소그룹의 집계 함수를 이용한 조건을 표시할 수 있음.
이전글
다음글
728x90
반응형
'자격증 > SQLD' 카테고리의 다른 글
SQLD 2과목 SQL 기본 및 활용 - 표준 조인 (0) | 2024.01.14 |
---|---|
SQLD 2과목 SQL 기본 및 활용 - 조인 (1) | 2024.01.13 |
SQLD 2과목 SQL 기본 및 활용 - WHERE 절 (1) | 2024.01.11 |
SQLD 2과목 SQL 기본 및 활용 - 함수(2) (0) | 2024.01.10 |
SQLD 2과목 SQL 기본 및 활용 - 함수(1) (0) | 2024.01.10 |