본문 바로가기

[오라클 레퍼런스 함수] AVG - 평균값 계산

by ㅇㅍㅍ 2023. 7. 30.
[오라클 레퍼런스 함수] AVG - 평균값 계산
728x90

AVG

 

구문

AVG([ DISTINCT | ALL ] expr) [ OVER(analytic_clause) ]

 

참고:

구문, 의미, 그리고 제한 사항에 대한 정보는 Analytic Functions을 참조하세요.

 

목적

AVG 함수는 expr의 평균 값을 반환합니다.

이 함수는 숫자 데이터 유형 또는 숫자 데이터 유형으로 암묵적으로 변환 가능한 비숫자 데이터 유형을 인수로 받습니다. 함수는 인수의 숫자 데이터 유형과 동일한 데이터 유형을 반환합니다.

 

참고:

암묵적 변환에 대한 자세한 내용은 표 2-8을 참조하십시오.

 

만약 DISTINCT를 지정한다면, analytic_clausequery_partition_clause만 지정할 수 있습니다. order_by_clausewindowing_clause는 허용되지 않습니다.

 

참고:

expr의 유효한 형식과 Aggregate Functions에 대한 자세한 정보는 About SQL Expressions를 참조하십시오.

 

집계 예제

다음 예제는 hr.employees 테이블의 모든 직원들의 평균 급여를 계산합니다:

SELECT AVG(salary) "Average"
  FROM employees;

       Average
--------------
    6461.83178

 

분석 예제

다음 예제는 employees 테이블의 각 직원에 대해, 같은 매니저에게 보고하는 직원들 중 해당 직원의 고용일 바로 직전과 바로 이후 범위에서 고용된 직원들의 평균 급여를 계산합니다:

SELECT manager_id, last_name, hire_date, salary,
       AVG(salary) OVER (PARTITION BY manager_id ORDER BY hire_date 
  ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) AS c_mavg
  FROM employees
  ORDER BY manager_id, hire_date, salary;

MANAGER_ID LAST_NAME                 HIRE_DATE     SALARY     C_MAVG
---------- ------------------------- --------- ---------- ----------
       100 De Haan                   13-JAN-01      17000      14000
       100 Raphaely                  07-DEC-02      11000 11966.6667
       100 Kaufling                  01-MAY-03       7900 10633.3333
       100 Hartstein                 17-FEB-04      13000 9633.33333
       100 Weiss                     18-JUL-04       8000 11666.6667
       100 Russell                   01-OCT-04      14000 11833.3333
       100 Partners                  05-JAN-05      13500 13166.6667
       100 Errazuriz                 10-MAR-05      12000 11233.3333
. . .

 


출처: 오라클 레퍼런스

원문 링크: Oracle AVG 함수 문서

 

반응형

댓글