ヘッダーをスキップ
Oracle® OLAP Expression Syntaxリファレンス
リリース11.2
B70202-01
  目次へ移動
目次

前
 
次
 

SUM

SUMは、時間ディメンションで計算された値から合計を選択して返します。SUM関数を使用して、現在までの期間の計算を作成できます。

GREGORIANリレーションは、時間ディメンションにグレゴリオ暦を追加します。このリレーションは、会計や非標準の階層での計算に便利です。

戻り値

NUMBER

構文

SUM (value_expr) OVER (window_clause)

window_clause::=

[ { DIMENSION dimension_id | HIERARCHY hierarchy_id } ]
    BETWEEN preceding_boundary | following_boundary 
      [WITHIN { PARENT
               | LEVEL
               | GREGORIAN {YEAR | QUARTER | MONTH | WEEK}
               | ANCESTOR AT { DIMENSION LEVEL dim_level_id
                              | HIERARCHY LEVEL hier_level_id 
                              }
               }
      ]

preceding_boundary::=

{UNBOUNDED PRECEDING | expression PRECEDING} AND 
   { CURRENT MEMBER 
   | expression {PRECEDING | FOLLOWING}
   | UNBOUNDED FOLLOWING
   }

following_boundary::=

{CURRENT MEMBER | expression FOLLOWING} AND
  { expression FOLLOWING 
  | UNBOUNDED FOLLOWING
  }

引数

value_expr

計算する値を含むディメンション式。

dimension_id

デフォルト階層を使用して値が計算される時間ディメンション。

hierarchy_id

値が計算される階層。代わりにdimension_idが使用される場合、デフォルト階層が使用されます。

dim_level_id

dimension_idのレベルの名前。

hier_level_id

hierarchy_idのレベルの名前。

boundary

preceding_boundaryおよびfollowing_boundaryは、ディメンションまたは階層で特定されるグループ内の期間の範囲を特定します。

UNBOUNDED: グループの最初の期間で始まるか、最後の期間で終わります。

CURRENT MEMBER: 現在の期間の計算を開始または終了します。

expression

数値は、範囲を開始するまたは終了する、現在の期間から特定の距離にある期間を示します。

WITHIN副句

計算に使用する期間の範囲を指定します。次は、キーワードの説明です。

範囲 説明
LEVEL 同一レベルのすべての期間を計算します。(デフォルト)
PARENT 同じ親を持つ同一レベルの期間を計算します。
GREGORIAN YEAR 同じ年(グレゴリオ暦)の期間を計算します。
GREGORIAN QUARTER 同じ四半期(グレゴリオ暦)の期間を計算します。
GREGORIAN MONTH 同じ月(グレゴリオ暦)の期間を計算します。
GREGORIAN WEEK 同じ週(グレゴリオ暦)の期間を計算します。
ANCESTOR 指定したレベルで、同じ祖先を持つ同一レベルの期間を含めます。

この例は、レベル内の現在の期間と次の期間の2つの値の合計を計算します。結果は「合計」列に示されています。

SUM(UNITS_CUBE.SALES) OVER (DIMENSION "TIME" BETWEEN 1 PRECEDING AND CURRENT MEMBER WITHIN LEVEL)

時間 販売 合計
Q1.04 146529 289599
Q2.04 143070 291362
Q3.04 148292 297820
Q4.04 149528 293135
Q1.05 143607 281703
Q2.05 138096 277049
Q3.05 138953 284015
Q4.05 145062 291881

次の例は、年初来の販売を計算します。

SUM(UNITS_CUBE.SALES) OVER (HIERARCHY TIME.CALENDAR BETWEEN UNBOUNDED PRECEDING AND CURRENT MEMBER WITHIN ANCESTOR AT DIMENSION LEVEL TIME.CALENDAR_YEAR)

時間 販売 販売YTD
JAN-05 12093518 12093518
FEB-05 10103162 22196680
MAR-05 9184658 31381338
APR-05 9185964 40567302
MAY-05 11640216 52207519
JUN-05 16816561 69024079
JUL-05 11110903 80134982
AUG-05 9475807 89610789
SEP-05 12030538 101641328
OCT-05 11135032 112776359
NOV-05 11067754 123844113

関連トピック

AVGCOUNTMAXMIN