SSAS Dimension属性为Calculated Measure

时间:2014-06-09 14:11:40

标签: sql-server-2012 ssas mdx data-warehouse

我在尝试实现维度属性的平均值时遇到了一些问题。

基本结构是:

  • 预订标题维度
  • 事实表(每个预订标题多行) 条目)

在预订标题维度上,我有一个名为“预订窗口”的数字属性,我希望能够创建一个平均此值的计算度量。

我们正在使用SQL Server 2012标准版。

非常感谢任何帮助。

3 个答案:

答案 0 :(得分:4)

最好的方法是从维度表创建度量值组(在BIDS中,转到多维数据集设计器,选项卡“多维数据集结构”,右键单击“度量”列表中的多维数据集对象,然后选择“新度量组” ,选择您的维度表)。 BIDS将生成一些措施,你可以删除除了两个以外的所有措施:一个基于你的数字属性(我将其称为“YourSummedAttrib”,以便在下面引用一个名称),以及计数措施。度量“YourSummedAttrib”的聚合函数可能是“sum”,保留原样。

然后,创建一个计算度量,将“YourSummedAttrib”除以计数度量,得到平均值。最后,如果您已经测试了所有内容,请在将多维数据集提供给用户之前使两个度量“YourSummedAttrib”和计数度量不可见,因为它们只需要查看平均值,即计算出的度量值。

答案 1 :(得分:1)

你可以尝试这个,它可以为你提供所有成员的平均属性。

WITH MEMBER [Measures].[Booking Window Value] AS
[Booking Header].[Booking Window].CURRENTMEMBER.MEMBER_VALUE
MEMBER [Measures].[Avg Booking Window Value] AS
AVG([Booking Header].[Booking Window].[Booking Window].MEMBERS,[Measures].[Booking Window Value])
SELECT
[Measures].[Avg Booking Window Value] ON COLUMNS
FROM
[YourCube]

希望能为我的任何困惑提供帮助和道歉。

答案 2 :(得分:0)

我尝试使用相同的想法,但没有成功。我发现的解决方案是创建一个具有计算出的平均值的视图,并包含一组新的度量。