All thing of the world!

Oracle COUNT 설명 : 오라클 함수 본문

IT/Oracle DBMS

Oracle COUNT 설명 : 오라클 함수

WorldSeeker 2021. 4. 6. 09:19

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한 것이다. 의하자!

 

Comments