All thing of the world!

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

IT/Oracle DBMS

Oracle APPROX_COUNT 설명 : 오라클 함수

WorldSeeker 2021. 10. 7. 15:25

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

 

1. 함수의 목적
   

    Oracle APPROX_COUNT는 개력적인 expr 인수로 받은 컬럼의 개략적인 행의 갯수를 반환한다. (개략적이라고는 하나 거의 100% 맞다)

 

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

  
2. 샘플을 통한 개념 퀵뷰

 

SELECT department_id, job_id, APPROX_COUNT(*)

FROM employees

GROUP BY department_id, job_id



3. 사용방법
 



4. 함수 PARAMETER 설명
 
[expr]

expr의 경우 BFILE, BLOB, CLOB, LONG, LONG RAW 또는 NCLOB 이외의 스칼라 데이터 유형의 컬럼을 지정할 수 있다.

 

[MAX_ERROR]

'MAX_ERROR'를 지정하면 실제 갯수와 본 함수 사용으로 인해 count한 갯수 사이의 차이를 구함

 

 

5. 다양한 샘플표현

1) MAX_ERROR를 사용한 sql

 

  SELECT department

           , record_type

           , APPROX_COUNT(record_value, 'MAX_ERROR')

  FROM t1;

Comments