次の方法で共有


ParallelPeriod (MDX)

前の期間から、指定されたメンバと同じ相対位置にあるメンバを返します。

構文

ParallelPeriod( [ Level_Expression [ ,Index [ , Member_Expression ] ] ] )

引数

  • Level_Expression
    レベルを返す有効な多次元式 (MDX) 式です。

  • Index
    さかのぼる並列期間の数を指定する有効な数値式です。

  • Member_Expression
    メンバを返す有効な多次元式 (MDX) 式です。

説明

ParallelPeriod 関数は Cousin 関数と類似していますが、時系列との関係がより密になっています。ParallelPeriod 関数は、指定されたメンバの先祖を指定されたレベルで取得し、指定された期間だけさかのぼってこの先祖の兄弟を検出して、最終的に、その兄弟の子孫の中から、指定されたメンバの並列期間を返します。

ParallelPeriod 関数の引数の既定値は、以下のとおりです。

  • レベル式もメンバ式も指定されなかった場合、既定のメンバ値は時間ディメンションの現在メンバ (Time.CurrentMember) になります。

  • レベル式が指定され、メンバ式が指定されなかった場合、既定のメンバ値は Level_Expression.Hierarchy.CurrentMember になります。

  • 既定のインデックス値は 1 です。

  • 既定のレベルは、指定されたメンバの親のレベルです。

ParallelPeriod 関数は、以下の MDX ステートメントと等価です。

Cousin(Member_Expression, Lag(Ancestor(Member_Expression, Level_Expression), Numeric_Expression)

次の例では、Quarter レベルを基準として、2003 年 10 月から 3 期間さかのぼった並列期間を返します。つまり、2003 年 1 月が返されます。

SELECT ParallelPeriod ([Date].[Calendar].[Calendar Quarter]
   , 3
   , [Date].[Calendar].[Month].[October 2003])
   ON 0
   FROM [Adventure Works]

次の例では、Semester レベルを基準として、2003 年 10 月から 3 期間さかのぼった並列期間を返します。つまり、2002 年 4 月が返されます。

SELECT ParallelPeriod ([Date].[Calendar].[Calendar Semester]
   , 3
   , [Date].[Calendar].[Month].[October 2003])
   ON 0
   FROM [Adventure Works]