Lag
Essbaseアウトラインのメンバーの順序を使用して、MDX Lag()関数は、同じ世代またはレベル(layertypeで定義)に沿って、指定されたメンバーよりnステップ後のメンバーを返します。
構文
member.Lag (index [,layertype ] [, hierarchy ] )
または
Lag ( member, index [, hierarchy ] )
パラメータ
ノート
-
Lag関数で指定したメンバーが存在しない場合、結果は空のメンバーになります。たとえば、Sample Basicを使用すると、
[Jun].lag (12)
は空のメンバーを返します。 -
複数の階層が有効である場合、ソース・メンバーが1つの階層にあり、結果メンバーが別の階層に属していると、この関数はNULLを返します。
例
次の式:
[Jun].lag (3)
Junの3ステップ前のメンバーを返します。
[Mar]
次の式:
[Jun].lag (-3)
Junの3ステップ後のメンバーを返します。
[Sep]
次の問合せは、各月について、過去3か月間の売上と平均を表示します:
WITH MEMBER
[Measures].[Average Sales in Last 3 months]
AS
'Avg(
{[Year].CurrentMember,
[Year].CurrentMember.Lag(1),
[Year]. CurrentMember.Lag(2)
},
[Measures].[Sales]
)'
SELECT
{[Measures].[Sales],
[Measures].[Average Sales in Last 3 months]
}
ON COLUMNS,
[Year].Levels(0).Members
ON ROWS
FROM Sample.Basic
前述の問合せは、次のグリッドを返します:
表4-102 MDX例からの出力グリッド
(軸) | Sales | 過去3か月間の平均売上高 |
---|---|---|
Jan | 31538 | 31538 |
Feb | 23069 | 31803.500 |
March | 32213 | 31940 |
April | 32917 | 32399.667 |
May | 33674 | 32934.667 |
Jun | 35088 | 33893 |
Jul | 36134 | 34965.333 |
Aug | 36008 | 35743.333 |
Sep | 33073 | 35071.667 |
Oct | 32828 | 33969.667 |
Nov | 31971 | 32624 |
Dec | 33342 | 32713.667 |