MDXでのメンバー・プロパティの問合せ
MDX問合せ内では、次の2つの方法でプロパティを使用できます。 最初のアプローチでは、各軸セットのディメンションとプロパティの組合せをリストできます。 問合せが実行されると、指定されたディメンションのすべてのメンバーについて指定されたプロパティが評価され、結果セットに含められます。
たとえば、列軸で、次の問合せを実行すると、すべてのMarketディメンション・メンバーのGEN_NUMBER情報が返されます。 行軸では、問合せはすべてのProductディメンション・メンバーのMEMBER_ALIAS情報を返します。
SELECT
[Market].Members
DIMENSION PROPERTIES [Market].[GEN_NUMBER] on columns,
Filter ([Product].Members, Sales > 5000)
DIMENSION PROPERTIES [Product].[MEMBER_ALIAS] on rows
from Sample.Basic
軸の「DIMENSION PROPERTIES」セクションを使用してメンバー・プロパティを問い合せる場合、プロパティはディメンション名とプロパティ名で識別することも、プロパティ名自体を使用して識別することもできます。 プロパティ名が単独で使用される場合、そのプロパティ情報は、そのプロパティが適用されるその軸上のすべてのディメンションのすべてのメンバーに対して返されます。
ノート:
プロパティ名が「DIMENSION PROPERTIES」セクション内で単独で使用される場合は、プロパティ名を角カッコ[]で囲まないでください。
次の問合せでは、YearディメンションとProductディメンションの両方の行軸でMEMBER_ALIASプロパティが評価されます。
SELECT
[Market].Members
DIMENSION PROPERTIES [Market].[GEN_NUMBER] on columns,
CrossJoin([Product].Children, Year.Children)
DIMENSION PROPERTIES MEMBER_ALIAS on rows
from Sample.Basic
2番目のアプローチでは、MDX問合せの値式内でプロパティを使用できます。 たとえば、入力セットのメンバーのプロパティを使用する値式に基づいてセットをフィルタできます。
次の問合せは、缶にパッケージ化されているすべてのカフェイン製品を返します。
Select
Filter([Product].levels(0).members,
[Product].CurrentMember.Caffeinated and
[Product].CurrentMember.[Pkg Type] = "Can")
Dimension Properties
[Caffeinated], [Pkg Type] on columns
次の問合せは、UDA [Major Market]
を使用して、Marketディメンションの現在のメンバーが主要な市場であるかどうかに基づいて値[BudgetedExpenses]
を計算します。
With
MEMBER [Measures].[BudgetedExpenses] AS
'IIF([Market].CurrentMember.[Major Market],
[Marketing] * 1.2, [Marketing])'
Select
{[Measures].[BudgetedExpenses]} on columns,
Market.Members on rows
Where
([Budget])
次の問合せでは、別名表名が使用されます。
SELECT
[Product].Members
DIMENSION PROPERTIES [Default] on columns
from Sample.Basic;
SELECT
[Product].Members
DIMENSION PROPERTIES [Long Names] on columns
from Sample.Basic;