次の方法で共有


集計関数 - avg

適用対象:SQL Server

一連の数値の平均値を返します。

構文

  
fn:avg($arg as xdt:anyAtomicType*) as xdt:anyAtomicType?  

引数

$arg
平均が計算されるアトミック値のシーケンス。

解説

avg() に渡されるアトミック化された値のすべての型は、3 つの組み込みの数値基本型のいずれか、または xdt:untypedAtomic のサブタイプである必要があります。 これらの型を混在させることはできません。 xdt:untypedAtomic 型の値は、xs:double として扱われます。 avg() の結果は、xdt:untypedAtomic の場合は xs:double など、渡された型の基本型を受け取ります。

入力が静的に空の場合、空は暗黙的に指定され、静的エラーが発生します。

avg() 関数は、計算された数値の平均を返します。 次に例を示します。

sum($arg) div count($arg)

$argが空のシーケンスの場合は、空のシーケンスが返されます。

xdt:untypedAtomic 値を xs:double にキャストできない場合、値は入力シーケンス では無視$arg。

他のすべての場合は、関数から静的エラーが返されます。

このトピックでは、AdventureWorks データベースのさまざまな xml 型列に格納されている XML インスタンスに対する XQuery の例を示します。

A. avg() XQuery 関数を使用して、すべてのワーク センターの場所の平均よりも労働時間が大きい製造プロセスのワーク センターの場所を検索します。

min 関数 (XQuery) で提供されるクエリを書き直して、avg() 関数を使用できます。

実装の制限事項

制限事項は次のとおりです。

  • avg() 関数は、すべての整数を xs:decimal にマップします。

  • xs:duration 型の値に対する avg() 関数はサポートされていません。

  • 基本データ型の境界を超えて複数の型が混在するシーケンスはサポートされません。

参照

xml データ型に対する XQuery 関数