domingo, 10 de agosto de 2014

12c - Approximate Count Distinct

A função APPROX_COUNT_DISTINCT proporciona uma alternativa para a função COUNT (DISTINCT expr).

Esta função processa grandes quantidades de dados de uma forma muito mais rápida que o COUNT, com um desvio insignificante do resultado exato.

Ela não pode ser utilizada com os seguintes tipos de dados:

  • BFILE
  • BLOB
  • CLOB
  • LONG
  • LONG RAW
  • NCLOB


A forma comum de utilização:

SQL> SELECT count (distinct manager_id) AS "Gerentes Ativos"
FROM hr.employees_big;

Gerentes Ativos
---------------
18

Elapsed: 00:00:03.02


Utilizando a função APPROX_COUNT_DISTINCT:

SQL> SELECT APPROX_COUNT_DISTINCT(manager_id) AS "Gerentes Ativos"
FROM hr.employees_big;

Gerentes Ativos
---------------
18

Elapsed: 00:00:00.62


Para quem quiser se aprofundar no assunto, indico o seguinte post:



Abraço,

Alex Zaballa.

0 comentários: