본문 바로가기
오라클 게시판/오라클 함수

【오라클(Oracle) SQL 함수】 COUNT 함수

by 기서무나구물 2018. 11. 14.

포스팅 목차

    오라클 SQL 함수(Oracle SQL Function) 목록 리스트 링크

     

    o COUNT

     


    문 법

    count::=


    목 적

    COUNT함수는 쿼리에 의해 반환되는 관측치 행의 개수를 반환한다. 집계 함수 또는 분석함수로 이용할 수 있다.

    만약 DISTINCT를 지정했다면, analytic_clause의 query_partition_clause도 지정할 수 있다. order_by_clause과 indowing_clause은 허용하지 않는다.

     

    만약 expr을 지정하면, COUNT는 expr이 NULL이 아닌 행의 수를 반환한다. expr의 모든 행을 카운트하거나 expr의 distinct값만 카운트할 수 있다. 만약 '*'을 지정했다면, 이 함수는 중복과 NULL을 포함한 모든 행을 반환한다. COUNT함수 결과는 NULL을 반환하지 않는다.

    See Also:
    "About SQL Expressions " for information on valid forms of expr and "Aggregate Functions "

     


    패키지 함수 비교 (Oracle, Pandas, R Prog, Dplyr, Sqldf, Pandasql, Data.Table)

     


    관련 함수

    함수명 함수내용
    AVG 지정된 칼럼에 대한 조건을 만족하는 데이터를 기준으로 Null을 제외한 평균값을 반환한다.
    COUNT 쿼리에 의해 반환되는 관측치 행의 개수를 반환한다. 집계 함수 또는 분석함수로 이용할 수 있다.
    MAX 지정한 인수를 기준으로 그룹 또는 전체 데이터에 대한 최댓값을 반환한다.
    MIN 지정한 인수를 기준으로 그룹 또는 전체 데이터에 대한 인수의 최솟값을 반환한다.
    MEDIAN
    연속된 분산 모델을 가정한 역 분포 함수이다. 이 함수는 수치형 데이터 또는 일자(Date)에 대한 중앙값 또는 값의 정렬 후에 보간법을 사용하여 중앙값을 계산하여 반환한다.
    STDDEV 수치형 인수 expr의 표본표준편차(sample standard deviation)를 반환한다.
    SUM 그룹 또는 전체 데이터에 대한 수치형 인수 expr에 대한 값의 합을 반환한다.
    VARIANCE expr의 분산을 반환한다. 집계 함수 또는 분석함수로 이용된다.

     


    예 제

    집계함수 예제

    다음 예제는 COUNT함수를 집계 함수로 이용.

    Oracle Program
    SELECT COUNT(*) "Total" FROM employees;
    
         Total
    ----------
           107
    
    SELECT COUNT(*) "Allstars" FROM employees
       WHERE commission_pct > 0;
    
     Allstars
    ---------
           35
    
    SELECT COUNT(commission_pct) "Count" FROM employees;
    
         Count
    ----------
            35
    
    SELECT COUNT(DISTINCT manager_id) "Managers" FROM employees;
    
      Managers
    ----------
            18

     


    분석함수 예제

    다음 예제는 employee테이블에서 각 종업원에 대하여, 그 종업원의 급여보다 50보다 적은 금액으로부터 150보다 많은 급여를 벌고 있는 종업원의 수를 계산한다.

    Oracle Program
    SELECT last_name, salary,
       COUNT(*) OVER (ORDER BY salary RANGE BETWEEN 50 PRECEDING
          AND 150 FOLLOWING) AS mov_count FROM employees;

     

    Results
    LAST_NAME                     SALARY  MOV_COUNT
    ------------------------- ---------- ----------
    Olson                           2100          3
    Markle                          2200          2
    Philtanker                      2200          2
    Landry                          2400          8
    Gee                             2400          8
    Colmenares                      2500         10
    Patel                           2500         10
    . . .

     


    오라클 SQL 함수(Oracle SQL Function) 목록 리스트 링크

     

    [SQL, Pandas, R Prog, Dplyr, SQLDF, PANDASQL, DATA.TABLE] SQL EMP 예제로 만나는 테이블 데이터 처리 방법 리스트 링크 링크
    반응형

    댓글