반응형
오라클 집계 함수 COUNT
COUNT(*) : NULL 값을 포함한 행의 수를 출력한다.
• 집계 함수(Aggregate Function)
집계 함수명 ([DISTINCT | ALL] 칼럼이나 표현식) - ALL : Default 옵션이므로 생략 가능함 - DISTINCT : DISTINCT : 같은 값을 하나의 데이터로 간주할 때 사용하는 옵션임
집계 함수 | 사용 목적 |
COUNT(*) | NULL 값을 포함한 행의 수를 출력한다. |
COUNT(표현식) | 표현식의 값이 NULL 값인 것을 제외한 행의 수를 출 력한다. |
SUM([DISTINCT | ALL] 표현식) | 표현식의 NULL 값을 제외한 합계를 출력한다. |
AVG([DISTINCT | ALL] 표현식) | 표현식의 NULL 값을 제외한 평균을 출력한다. |
MAX([DISTINCT | ALL] 표현식) | 표현식의 최대값을 출력한다. (문자,날짜 데이터 타입도 사용가능) |
MIN([DISTINCT | ALL] 표현식) | 표현식의 최소값을 출력한다 (문자,날짜 데이터 타입도 사용가능) |
STDDEV([DISTINCT | ALL] 표현식) | 표현식의 표준 편차를 출력한다. |
VARIAN([DISTINCT | ALL] 표현식) | 표현식의 분산을 출력한다 |
기타 통계 함수 | 벤더별로 다양한 통계식을 제공한다 |
[예제] 일반적으로 집계 함수는 GROUP BY 절과 같이 사용되지만 테이블 전체가 하나의 그룹이 되는 경우에는 GROUP BY 절 없이 단독으로도 사용 가능하다.
SELECT COUNT(*) "전체 행수", COUNT(HEIGHT) "키 건수",
MAX(HEIGHT) 최대키, MIN(HEIGHT) 최소키, ROUND(AVG(HEIGHT),2) 평균키
FROM PLAYER;
실행결과
전체 행수 키 건수 최대키 최소키 평균키
480 447 196 165 179.31
1개의 행이 선택되었다
실행 결과를 보면 COUNT(HEIGHT)는 NULL 값이 아닌 키(HEIGHT) 칼럼의 건수만 출력하므로 COUNT(*)의 480보다 작은 것을 볼 수 있다. 그 이유는 COUNT(*) 함수에 사용된 와일드카드(*) 는 전체 칼럼을 뜻하는데 전체 칼럼이 NULL인 행은 존재할 수 없기 때문에 결국 COUNT(*)는 전 체 행의 개수를 출력한 것이고 COUNT(HEIGHT)는 HEIGHT 칼럼 값이 NULL인 33건은 제외된 건 148 체 행의 개수를 출력한 것이고, COUNT(HEIGHT)는 HEIGHT 칼럼 값이 NULL인 33건은 제외된 건 수의 합이다
참조: 한국데이터베이스진흥원
반응형
'DB' 카테고리의 다른 글
[SQL] 조건문 DECODE (0) | 2023.03.23 |
---|---|
[SQL] GROUP BY절, HAVING 절 (0) | 2023.03.23 |
[sql] WHERE 절 문법 (0) | 2023.03.14 |
[SQL] 오라클 정렬 sort (order by 절 사용법) (0) | 2023.03.14 |
[SQL 기본] 관계형 데이터베이스 개요 (0) | 2023.03.09 |