MAXは、時間ディメンションで計算されたデータ値の中から最大の値を選択して返します。
GREGORIANリレーションは、時間ディメンションにグレゴリオ暦を追加します。このリレーションは、会計や非標準の階層での計算に便利です。
戻り値
NUMBER
構文
MAX (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 |
指定したレベルで、同じ祖先を持つ同一レベルの期間を含めます。 |
例
この例は、カレンダ年の移動最大値を計算します。
MAX(GLOBAL.UNITS_CUBE.UNITS) OVER (DIMENSION GLOBAL.TIME BETWEEN UNBOUNDED PRECEDING AND CURRENT MEMBER WITHIN ANCESTOR AT DIMENSION LEVEL GLOBAL.TIME.CALENDAR_YEAR)
| 時間 | ユニット | 最大値 |
|---|---|---|
| JAN-06 | 47776 | 47776 |
| FEB-06 | 47695 | 47776 |
| MAR-06 | 51348 | 51348 |
| APR-06 | 47005 | 51348 |
| MAY-06 | 52809 | 52809 |
| JUN-06 | 45419 | 52809 |
| JUL-06 | 48388 | 52809 |
| AUG-06 | 48830 | 52809 |
| SEP-06 | 46354 | 52809 |
| OCT-06 | 47411 | 52809 |
| NOV-06 | 46842 | 52809 |
| DEC-06 | 55052 | 55052 |
関連トピック