Oracle COUNT 설명 : 오라클 함수
1. 함수의 목적
Oracle COUNT는 쿼리에 의해 반환되는 행의 갯수를 카운트한다. 가장 많은 빈도로 사용되는 함수중에 하나이다.
2. 샘플을 통한 개념 퀵뷰
SELECT COUNT(*) "Total"
FROM employees;
Total
----------
107
3. 사용방법
4. 함수 PARAMETER 설명
[*]
중복과 null을 포함한 모든 rows를 count하란 의미가 된다.
[expr]
expr로 특정 컬럼을 지정하게 되면, 지정한 컬럼의 null은 제외하고 count를 하게된다.
[DISTINCT]
DISTINCT를 선언하게 되면 중복된 컬럼은 1개로 count하게된다.
[OVER]
OVER를 사용해서 다양한 뷰로 분석/집계가 가능하다.
5. 다양한 샘플표현
example1) employees 테이블에에서 commission>0인 모든 행을 카운트하라.
SELECT COUNT(*) "Allstars"
FROM employees
WHERE commission_pct > 0;
Allstars
---------
35
example2) employees테이블의 commission_pct 중 null이 아닌 것을 count하라.
SELECT COUNT(commission_pct) "Count"
FROM employees;
Count
----------
35
example3) employees테이블에서 manager_id값을 중복을 제외하고 count하라.
SELECT COUNT(DISTINCT manager_id) "Managers"
FROM employees;
Managers
----------
18
example4) 그럼 count(distinct manager_id)는 null을 포함하여 distinct 한 것일까?
select distinct manager_id
from employees;
MANAGER_ID
----------
<--- null
100
123
120
121
147
108
148
149
205
102
MANAGER_ID
----------
201
101
114
124
145
146
103
122
19 행이 선택되었습니다.
결과에서 알 수 있듯이, count(distinct manager_id)는 manager_id가 null인 것은 제외하고 count한 것이다. 주의하자!