ヘッダーをスキップ
Oracle® OLAP DMLリファレンス
11gリリース2 (11.2)
B61346-03
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

AVERAGE

AVERAGEファンクションは、式の値の平均値を計算するファンクションです。

戻り値

DECIMAL

構文

AVERAGE(expression [CACHE] [dimension ...] )

パラメータ

expression

平均を計算する値の式。

CACHE

内部動作が若干変更されます。このキーワードは、元のパフォーマンスが非常に遅い場合にのみ指定してください。

dimension

結果のディメンションの名前。または、expressionの1つのディメンションと結果のディメンションとする別のディメンションとの間のリレーションの名前。

デフォルトでは、AVERAGEファンクションの戻り値は単一の値になります。結果に対し1つ以上のディメンションを指定すると、AVERAGEは、指定されたディメンションに基づいて値を計算し、値の配列を返します。各ディメンションは、expressionのディメンションであるか、そのディメンションの1つと関連している必要があります。


ヒント:

指定したディメンションがexpressionの実際のディメンションではなくexpressionのディメンションに関連付けられたディメンションであり、かつ2つのディメンション間のリレーションが2つ以上ある場合は、ディメンション間のデフォルトのリレーションを使用して計算が行われます(デフォルトのリレーションの詳細は、 RELATIONコマンド を参照)。(デフォルトのリレーションの詳細は、RELATIONコマンドを参照してください。)Oracle OLAPでこのデフォルトのリレーションを使用しない場合は、リレーションの名前を指定して、関連付けられたディメンションを指定します。

使用上の注意

NA値とAVERAGE

AVERAGEは、他の集計ファンクションと同様に、NASKIPオプションの影響を受けます。NASKIPがYESに設定されている場合(デフォルト)、AVERAGEはNA値を無視し、NA値以外の値の平均値を返します。NASKIPがNOに設定されている場合、AVERAGEは式の値のいずれかがNAであればNAを返します。式のすべての値がNAの場合は、NASKIPの設定にかかわらず、AVERAGEはNAを返します。

DAY、WEEK、MONTH、QUARTER、YEAR型のディメンションの平均値計算

DAY、WEEK、MONTH、QUARTER、YEAR型のディメンションによってexpressionがディメンション化されている場合は、これらの型のいずれかを持つ他のディメンションを関連ディメンションとして指定できます。Oracle OLAPでは、これら2つのディメンション間の暗黙的なリレーションが使用されます。これらの型のディメンションと別のディメンションとのマッピング(週から月など)を制御するには、2つのディメンション間のリレーションを明示的に定義し、そのリレーションの名前をAVERAGEファンクションのdimension引数として指定します。

関連ディメンションの各期間では、Oracle OLAPによって、ターゲット期間で終了するすべてのソース期間のデータの平均が計算されます。この方法は、どのディメンションがより上位の集計期間を保持しているかにかかわらず、適用されます。2つのディメンションの期間の間でデータを集計または割り当てる方法を制御するには、TCONVERTファンクションを使用します。

例7-25 月間売上の平均値の計算

この例では、スポーツウェアの月間平均売上を販売地区別に計算する方法を示します。

LIMIT product TO 'SPORTSWEAR'
REPORT W 14 HEADING 'Average Sales' AVERAGE(sales district)

この文によって生成される出力は、次のとおりです。

DISTRICT    Average Sales
----------- --------------
Boston      69,150.41
Atlanta    151,192.36
Chicago     95,692.99
Dallas     162,242.89
Denver      88,892.72
Seattle     54,092.32

地域ごとの月間平均売上を調べることもできます。regionディメンションはdistrictディメンションに関連しているので、AVERAGEファンクションの結果のディメンションとしてdistrictではなくregionを指定します。