使用变量和参数 (MDX)

在 Microsoft SQL Server Analysis Services 中,可以将多维表达式参数化 (MDX) 语句。 参数化语句允许您创建可在运行时自定义的一般语句。

在创建参数化语句时,通过在参数名称前面添加 at 符号 (@) 来标识参数名称。 例如, @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 集合。

另请参阅

MDX 脚本编写基础知识 (Analysis Services)