使用维度表达式

在多维表达式(MDX)中向函数传递参数时,通常使用维度和层级表达式,以返回层级中的成员、集合或元组。

维度表达式只能是简单表达式,因为它们是对象标识符。 关于简单表达式和复杂表达式的解释,请参见表达式(MDX)。

维表达式

维度表达式要么包含维度标识符,要么包含维度函数。

维度表达很少单独使用。 相反,你通常需要在一个维度上指定一个层级结构。 唯一的例外是当你使用测量维度时,它没有层级结构。

以下示例展示了一个计算出的成员,使用了[Measures]表达式和 。成员和计数()函数用于返回度量维度上的成员数量:

WITH MEMBER [Measures].[MeasureCount] AS  
COUNT([Measures].MEMBERS)  
SELECT [Measures].[MeasureCount] ON 0  
FROM [Adventure Works]  

维度标识符在用于描述MDX语句的BNF符号中以 Dimension_Name 形式出现。

层级表达

同样,层级表达式包含层级标识符或层级函数。 以下示例展示了层级表达式[Date]的使用。[日历],以及 .等级和。计数函数,用于返回日期维度日历层级中的层级数:

WITH MEMBER [Measures].[CalendarLevelCount] AS  
[Date].[Calendar].Levels.Count  
SELECT [Measures].[CalendarLevelCount] ON 0  
FROM [Adventure Works]  

层级表达式最常见的使用场景是与 。成员的功能是返回层级结构上的所有成员。 以下示例返回了[日期]的所有成员。[日历]在行轴上:

SELECT [Measures].[Internet Sales Amount] ON 0,  
[Date].[Calendar].MEMBERS ON 1  
FROM [Adventure Works]  

层级标识符在用于描述MDX语句的BNF符号中以 Dimension_Name.Hierarchy_Name 出现。