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

前
 
次
 

MOVINGTOTAL

MOVINGTOTALファンクション(省略形はMVTOT)は、指定されたディメンションにわたるディメンション化変数または式の値の一連の合計を計算します。ステータスにあるディメンション値ごとに、現行ディメンション値を基準にして指定範囲内のデータの合計を計算します。

変数または式に指定のディメンションしかない場合、MOVINGTOTALによって生成される一連の合計は、ステータスにある各ディメンション値につき1つです。変数または式に指定のディメンション以外のディメンションがある場合、MOVINGTOTALでは、他のディメンションのステータス・リストにある値の組合せごとに、個別に一連の合計を生成します。

戻り値

expressionのデータ型がDECIMALまたはSHORTの場合はDECIMAL、それ以外の場合はNUMBERになります。

構文

MOVINGTOTAL(expressionstartstopstep, [dimension [STATUS|limit-clause]])

パラメータ

expression

合計する値を持つ数値変数または計算。たとえば、UNITS、SALES-EXPENSEなど。

start
stop

合計する値の範囲を指定する整数値。startの値は範囲の先頭を指定します。stopの値は範囲の終点を指定します。dimensionの現行値を基準にしてstartとstopの値を指定します。現在より前をstartまたはstopに指定するには、値の前にカンマを付けます。したがって、現行のディメンション値に対してはゼロ(0)を指定し、現行値の直前の値に対しては-1を指定します。(「Movingファンクションによる範囲外の値およびNA値の処理方法」も参照してください。)


注意:

デフォルトでは、このファンクションは平均する値の範囲を識別するときにデフォルトのステータス・リストを使用します。STATUSまたはlimit-clause句のいずれかを指定することにより、この動作を変更できます。


ヒント:

ステータスの最後に範囲指定する場合は、便宜上および目的を文書化するために、DIMMAXキーワード付きのOBJファンクションを使用してstopの値を指定します。

step

合計の計算の対象を、範囲内のすべての値、1つおきの値、2つおきの値などにするかどうかを指定する正の整数。stepの値が1の場合、すべての値を合計します。値が2の場合、1番目、3番目、5番目(以降同様)の値を合計します。今月がJun96で、startstopの値がそれぞれ-33の場合、stepの値を2にすると、Mar96May96Jul96およびSep96が合計されます。

dimension

移動合計が計算されるディメンション。任意のディメンションを指定できますが、通常は時間ディメンションです。

expressionのディメンションがDAY、WEEK、MONTH、QUARTERまたはYEARの型であり、そのディメンションをMOVINGTOTALに使用する場合は、dimension引数を省略できます。

STATUS

移動合計の計算時に、MOVINGTOTALが現行のステータス・リストを使用することを指定します(つまり、現行のステータスにあるディメンション値のみを現行のステータス順に使用)。

limit-clause

LIMITファンクションで指定された値、または各種LIMITコマンドにおけるlimit-clause引数の構文(つまり、LIMITコマンドの「TO」などのlimit-type引数の後の構文)と同じ構文で指定された値を、MOVINGTOTALが使用することを指定します。これらの引数の構文については、LIMITコマンド(値を使用)LIMITコマンド(LEVELRELを使用)LIMIT(親リレーションを使用)LIMITコマンド(関連ディメンションを使用)LIMITコマンド(NOCONVERTを使用)およびLIMITコマンド(POSLISTを使用)を参照してください。

販売実績の移動合計を計算する例は、例8-31「移動平均の計算」を参照してください。