All thing of the world!

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

IT/Oracle DBMS

Oracle APPROX_SUM 설명 : 오라클 함수

WorldSeeker 2021. 10. 15. 11:21

* 주의 : 본 함수는 Oracle Database 18C 이상 사용가능함

 

1. 함수의 목적

    Oracle APPROX_SUM은 기존 SUM 함수의 대안으로, 대용량 데이터에서 매우 빠른 속도로 대략적인 합계값을 반환한다. (개략적이라고는 하나 거의 100% 맞다, 매우 큰 데이터 범위에 유리)

 

   * approximate query를 위한 함수로, 읽는 범위가 넓은 대용량 데이터베이스를 정확도보다는 속도를 중요시하는 상황에 쓰이도록 개발되었다(속도 매우 빠름, 오차허용 범위내의 정확도). 예를 들어 BI/DW등 대용량 데이터베이스에서 집계 테이블을 별도로 만들지 않고, 바로 소스 테이블을 approximate query를 사용할 수 있다. 오라클 내장 함수 중 접두어로 [APPROX_]가 붙은 함수는 approximate query를 위한 함수이다.

 

 

2. 샘플을 통한 개념 퀵뷰

 

--전체 급여가 가장 높은 모든 부서 내에서 상위 10개의 department_id, job_id와 합계값을 반환

SELECT department_id, job_id

          , APPROX_SUM(salary)

FROM employees

GROUP BY department_id, job_id HAVING APPROX_RANK ( PARTITION BY department_id ORDER BY APPROX_SUM(salary) DESC ) <= 10;

 

3. 사용방법 



4. 함수 PARAMETER 설명

 

[expr]

합계를 구할 대상 컬럼

 

[MAX_ERROR]

MAX_ERROR를 지정하면 실제 합계와 본 함수 사용으로 계산한 합계 사이의 차이를 구함

 

5. 다양한 샘플표현

 

 

끝.

 

Comments