STDDEV_SAMP および STDDEV_POP ウィンドウ関数 - Amazon Redshift

STDDEV_SAMP および STDDEV_POP ウィンドウ関数

STDDEV_SAMP および STDDEV_POP ウィンドウ関数は、数値のセットの標本標準偏差および母集団標準偏差を返します (整数、10 進数、または浮動小数点)。「STDDEV_SAMP および STDDEV_POP 関数」も参照してください。

STDDEV_SAMP および STDDEV は、同じ関数のシノニムです。

構文

STDDEV_SAMP | STDDEV | STDDEV_POP ( [ ALL ] expression ) OVER ( [ PARTITION BY expr_list ] [ ORDER BY order_list frame_clause ] )

引数

expression

関数の対象となる列または式。

ALL

引数 ALL を指定すると、この関数は式から重複する値をすべて保持します。ALL がデフォルトです。DISTINCT はサポートされません。

OVER

集計関数に使用するウィンドウ句を指定します。OVER 句は、ウィンドウ集計関数を標準セット集計関数と区別します。

PARTITION BY expr_list

1 つ以上の式で関数のウィンドウを定義します。

ORDER BY order_list

各パーティション内の行をソートします。PARTITION BY が指定されていない場合、ORDER BY はテーブル全体を使用します。

frame_clause

ORDER BY 句が集計関数に使用される場合、明示的なフレーム句が必要です。フレーム句は順序付けた結果内の行のセットを含めるか除外して、関数のウィンドウの行のセットを絞り込みます。フレーム句は ROWS キーワードおよび関連する指定子で構成されます。「ウィンドウ関数の構文の概要」を参照してください。

データ型

STDDEV 関数でサポートされる引数の型は、SMALLINT、INTEGER、BIGINT、NUMERIC、DECIMAL、REAL、および DOUBLE PRECISION です。

式のデータ型にかかわらず、STDDEV 関数の戻り値の型は倍精度浮動小数点数です。

次の例は、ウィンドウ関数として STDDEV_POP および VAR_POP 関数を使用する方法を示します。このクエリは SALES テーブルの PRICEPAID の値の母集団分散と母集団標準偏差を計算します。

select salesid, dateid, pricepaid, round(stddev_pop(pricepaid) over (order by dateid, salesid rows unbounded preceding)) as stddevpop, round(var_pop(pricepaid) over (order by dateid, salesid rows unbounded preceding)) as varpop from sales order by 2,1; salesid | dateid | pricepaid | stddevpop | varpop --------+--------+-----------+-----------+--------- 33095 | 1827 | 234.00 | 0 | 0 65082 | 1827 | 472.00 | 119 | 14161 88268 | 1827 | 836.00 | 248 | 61283 97197 | 1827 | 708.00 | 230 | 53019 110328 | 1827 | 347.00 | 223 | 49845 110917 | 1827 | 337.00 | 215 | 46159 150314 | 1827 | 688.00 | 211 | 44414 157751 | 1827 | 1730.00 | 447 | 199679 165890 | 1827 | 4192.00 | 1185 | 1403323 ...

例の標本標準偏差および標本分散の関数も同様に使用することができます。