次の方法で共有


変数とパラメータの使用 (MDX)

MicrosoftSQL ServerAnalysis Services では、多次元式 (MDX) ステートメントをパラメータ化できます。ステートメントをパラメータ化すれば、実行時にカスタマイズ可能な汎用ステートメントを作成できます。

パラメータ化されたステートメントを作成するときには、パラメータ名の前にアット記号 (@) を付けることによってパラメータ名を識別します。たとえば、@Year は有効なパラメータ名です。

MDX は、リテラルまたはスカラ値用のパラメータだけをサポートします。メンバ、セット、または組を参照するパラメータを作成するには、StrToMemberStrToSet などの関数を使う必要があります。

次の 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 コレクションを使用します。