APPROX_PERCENTILE_ESTIMATE¶
指定されたt-Digest状態に必要な近似パーセンタイル値を返します。
APPROX_PERCENTILE_ACCUMULATE および APPROX_PERCENTILE_COMBINE によって生成されたt-Digest状態は、この関数を使用してパーセンタイル推定値を計算するために使用できます。
そのため、 APPROX_PERCENTILE_ESTIMATE(APPROX_PERCENTILE_ACCUMULATE...)は APPROX_PERCENTILE(...)と同等です。
構文¶
APPROX_PERCENTILE_ESTIMATE( <state> , <percentile> )
引数¶
state
APPROX_PERCENTILE_ACCUMULATE または APPROX_PERCENTILE_COMBINE の呼び出しによって生成された状態情報を含む式です。
percentile
0.0
以上で1.0
未満の定数の実数値です。これは、0から99.999...までのパーセンタイルを示します(例: 値0.65は65番目のパーセンタイルを示します)。
例¶
特定の数値セットから複数のパーセンタイル値を概算する必要があるシナリオを考えます。これは、状態を作成し、 APPROX_PERCENTILE_ESTIMATE を使用してすべてのパーセンタイルを計算することで実行できます。
まず、状態を保存します。
CREATE OR REPLACE TABLE resultstate AS (SELECT APPROX_PERCENTILE_ACCUMULATE(c1) s FROM testtable);
次に、複数のパーセンタイルの状態をクエリします。
SELECT APPROX_PERCENTILE_ESTIMATE(s , 0.01), APPROX_PERCENTILE_ESTIMATE(s , 0.15), APPROX_PERCENTILE_ESTIMATE(s , 0.845) FROM testtable;
より広範な例については、 APPROX_PERCENTILE_ACCUMULATE にある例のセクションをご参照ください。