プライマリ・コンテンツに移動
Oracle® Database SQL言語リファレンス
12cリリース1 (12.1)
B71278-13
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

APPROX_COUNT_DISTINCT


注意:

APPROX_COUNT_DISTINCTファンクションは、Oracle Database 12cリリース1(12.1.0.2)から使用可能です。

構文

approx_count_distinct.gifの説明が続きます。
図approx_count_distinct.gifの説明

用途

APPROX_COUNT_DISTINCTは、exprの異なる値を含む適切な数の行を戻します。

このファンクションは、exprの異なる値を含む正確な数の行を戻すCOUNT (DISTINCT expr)ファンクションの代替機能を提供します。APPROX_COUNT_DISTINCTは、正確な結果とわずかに誤差がありますが、COUNTよりはるかに高速に大量のデータを処理します。

exprでは、BFILEBLOBCLOBLONGLONG RAWまたはNCLOB以外のスカラー・データ型の列を指定できます。

APPROX_COUNT_DISTINCTは、exprのnull値を含む行を無視します。このファンクションは、NUMBERを戻します。

次の文は、manager_idの異なる値を使用した適切な数の行を戻します。

SELECT APPROX_COUNT_DISTINCT(manager_id) AS "Active Managers"
  FROM employees;

Active Managers
---------------
             18

次の文は、各製品の適切な数の異なる顧客を戻します。

SELECT prod_id, APPROX_COUNT_DISTINCT(cust_id) AS "Number of Customers"
  FROM sales
  GROUP BY prod_id
  ORDER BY prod_id;

   PROD_ID Number of Customers
---------- -------------------
        13                2516
        14                2030
        15                2105
        16                2367
        17                2093
        18                2975
        19                2630
        20                3791
. . .