estdc()
グループ内のユニークな値のおおよその数を抽出します。
構文
estdc(EXPR[, NUMBER])
必須パラメータ
EXPR- グループ値を返す式
オプションパラメータ
NUMBER- 4~24の範囲で指定するビット数(デフォルト:
16)。ビット数を大きくすると精度とメモリ使用量が増加します。
説明
estdc()関数は、グループ内のレコードを処理しながらEXPRが返す値をHyperLogLog確率的データ構造に蓄積します。null値は処理しません。集計が完了すると、ユニーク値数の近似値を64ビット整数(long)で返します。
HyperLogLogは少量のメモリのみを使用しながら大規模データセットのユニーク値数を高速に推定します。デフォルトの精度ビット数16では標準誤差が約0.8%です。正確なユニーク値数が必要な場合はdc()関数を使用してください。
BITS値によってグループあたりのメモリ使用量が異なります。精度ビット数bのとき、レジスタ配列サイズは2^bバイトです。デフォルト値16ではグループあたり最大64KBを使用します。BITSを大きくすると精度が向上しますが、メモリ使用量も増加します。