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 |
関連トピック