集計関数 - 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() 関数はサポートされていません。
基本データ型の境界を超えて複数の型が混在するシーケンスはサポートされません。