mondrian中用mdx计算父级百分比和整体百分比

mdx计算父级百分比:

 

Mdx代码   收藏代码
  1. With  
  2. //整体百分比  
  3. Member [Measures].[用户的百分比1] as   
  4. ([Measures].[总用户] / ([Measures].[总用户], [时间].CurrentMember.Parent))  
  5. , format_string = "|#.00%|"  
  6. Member [Measures].[用户的百分比2] as   
  7. ([Measures].[总用户] / ([Measures].[总用户], [客户].CurrentMember.Parent, [时间].CurrentMember.Parent))  
  8. , format_string = "|#.00%|"  
  9. SELECT  
  10. NON EMPTY {[Measures].[总用户], [Measures].[用户的百分比1], [Measures].[用户的百分比2]} ON COLUMNS,  
  11. NON EMPTY CrossJoin([客户].[客户编号].Members, [时间].[日].Members) ON ROWS  
  12. FROM [TotalUserCube]  

 mdx计算整体百分比

Mdx代码   收藏代码
  1. With  
  2. //整体百分比  
  3. Member [Measures].[用户的整体百分比] as   
  4. ([Measures].[总用户] / ([Measures].[总用户], [时间].[All 时间s]))  
  5. , format_string = "|#.00%|"  
  6. SELECT  
  7. NON EMPTY {[Measures].[总用户], [Measures].[推送用户的百分比]  
  8. } ON COLUMNS,  
  9. NON EMPTY {Hierarchize({[时间].[日].Members})} ON ROWS  
  10. FROM [TotalUserCube]  

好的,你已经获得了你想要的精确的计算指标。然而你不可能让用户也去看这些复杂的MDX表达式,并且做复制和粘贴。此外,随着时间推移,这些表达式还可能发生变化。所以,一个更好的办法是,让这些MDX成为你的cube的一部分。这样,你的用户就可以仅仅引用它们,而不需要理会这些表达式的复杂性。

 

在Mondrian的设计器Schema Workbench中配置如下指标,其xml如下:

Xml代码   收藏代码
  1. <CalculatedMember name="User Percent of Total" dimension="Measures" formula="([Measures].[总用户] / ([Measures].[总用户], [时间].CurrentMember.Parent))" />  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值