

 Amazon Redshift は、パッチ 198 以降、新しい Python UDF の作成をサポートしなくなります。既存の Python UDF は、2026 年 6 月 30 日まで引き続き機能します。詳細については、[ブログ記事](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)を参照してください。

# AVG ウィンドウ関数
<a name="r_WF_AVG"></a>

 AVG ウィンドウ関数は入力式の値の平均 (算術平均) を返します。AVG 関数は数値に対してはたらき、NULL 値は無視します。

## 構文
<a name="r_WF_AVG-synopsis"></a>

```
AVG ( [ALL ] expression ) OVER
(
[ PARTITION BY expr_list ]
[ ORDER BY order_list 
                        frame_clause ]
)
```

## 引数
<a name="r_WF_AVG-arguments"></a>

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

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

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

PARTITION BY *expr\$1list*   
1 つ以上の式で AVG 関数のウィンドウを定義します。

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

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

## データ型
<a name="c_Supported_data_types_wf_avg"></a>

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

AVG 関数でサポートされる戻り値の型は次のとおりです。
+ SMALLINT または INTEGER 引数の場合は BIGINT
+ BIGINT 引数の場合は NUMERIC
+ 浮動小数点の引数の場合は DOUBLE PRECISION

## 例
<a name="r_WF_AVG-examples"></a>

次の例では、日付で販売数のローリング平均を計算します。日付 ID および販売 ID によって結果は順序付けられます。

```
select salesid, dateid, sellerid, qty,
avg(qty) over
(order by dateid, salesid rows unbounded preceding) as avg
from winsales
order by 2,1;

salesid |   dateid   | sellerid | qty | avg
---------+------------+----------+-----+-----
30001 | 2003-08-02 |        3 |  10 |  10
10001 | 2003-12-24 |        1 |  10 |  10
10005 | 2003-12-24 |        1 |  30 |  16
40001 | 2004-01-09 |        4 |  40 |  22
10006 | 2004-01-18 |        1 |  10 |  20
20001 | 2004-02-12 |        2 |  20 |  20
40005 | 2004-02-12 |        4 |  10 |  18
20002 | 2004-02-16 |        2 |  20 |  18
30003 | 2004-04-18 |        3 |  15 |  18
30004 | 2004-04-18 |        3 |  20 |  18
30007 | 2004-09-07 |        3 |  30 |  19
(11 rows)
```

 WINSALES テーブルの説明については、「[ウィンドウ関数例のサンプルテーブル](c_Window_functions.md#r_Window_function_example)」を参照してください。