変数とパラメータの使用 (MDX)
Microsoft SQL Server Analysis Services では、多次元式 (MDX) ステートメントをパラメータ化できます。ステートメントをパラメータ化すれば、実行時にカスタマイズ可能な汎用ステートメントを作成できます。
パラメータ化されたステートメントを作成するときには、パラメータ名の前に @ 記号を付けることによってパラメータ名を識別します。たとえば、@Year は有効なパラメータ名です。
MDX は、リテラルまたはスカラ値用のパラメータだけをサポートします。メンバ、セット、または組を参照するパラメータを作成するには、StrToMember や StrToSet などの関数を使う必要があります。
次の XML for Analysis (XMLA) の例では、@CountryName パラメータには顧客データの取得対象の国が入ります。
<Envelope xmlns="https://schemas.xmlsoap.org/soap/envelope/">
<Body>
<Execute xmlns="urn:schemas-microsoft-com:xml-analysis">
<Command>
<Statement>
select [Measures].members on 0,
Filter(Customer.[Customer Geography].Country.members,
Customer.[Customer Geography].CurrentMember.Name =
@CountryName) on 1
from [Adventure Works]
</Statement>
</Command>
<Properties />
<Parameters>
<Parameter>
<Name>CountryName</Name>
<Value>'United Kingdom'</Value>
</Parameter>
</Parameters>
</Execute>
</Body>
</Envelope>
OLE DB でこの機能を使用するには、ICommandWithParameters インターフェイスを使用します。ADOMD.Net でこの機能を使用するには、AdomdCommand.Parameters コレクションを使用します。