22
十二

复杂或有趣的MDX问题求解(1)-多个相关列参与求加权平均值

MDX求解加权平均数

(收集网络或论坛的MDX语句求解问题,自己给出的解答,欢迎指正;暂未提供解答的,欢迎一起解答。)

 

1.  多个相关列求加权平均

Question:

使用MDX查询语句想求地区维度为‘1’的时候customer+consumer的加权平均数
假如在地区‘1’处有如下几条数据:
price  customer  consumer
1      10        20
2      30        40
3      50        60
想要的公式是:
[(10+20)×1 + (30+40)×2 + (50+60)×3]/(1+2+3)
使用MDX语句或者表达式如何去求。

Answer:

with member [Measures].[a] as ‘([Measures].[Store Sales]+[Measures].[Store Cost])*[Measures].[Sales Count]‘

member [Measures].[b] as ‘sum({[Time].[1997].[Q1],[Time].[1997].[Q2],[Time].[1997].[Q3]},[Measures].[Sales Count])’

member [Measures].[result] as ‘[Measures].[a]/[Measures].[b]‘

select

{[Measures].[result]} on columns,

{[Store].[All Stores].[USA]} on rows

from sales

其中,假定:
  1) price = [Measures].[Sales Count]
      customer= [Measures].[Store Sales]
      consumer =[Measures].[Store Cost]
  2) 地区1=USA
      USA的三条数据发生在Q1,Q2,Q3

补充说明:

如果和USA同轴的不止时间轴,则可将余下的轴执行{{轴1成员集合}*{……}*{轴n成员集合}}操作,替代解答中的{[Time].[1997].[Q1],[Time].[1997].[Q2],[Time].[1997].[Q3]},因为CrossJion的结果仍然是SET.

VN:F [1.9.13_1145]
Rating: 0.0/10 (0 votes cast)

相关文章:

  1. 复杂或有趣的MDX问题求解(3)-SQL查询事实表与MDX语句查询的关系示例
  2. 复杂或有趣的MDX问题求解(4)- 求过去12个月的销售总额
  3. 一些常用的MDX查询语句(示例基于SSAS2005/SSAS2008)
  4. SSAS2005及SSAS2008中自定义MDX查询语句模板的使用
  5. 复杂或有趣的MDX问题求解(2)-根据客户上期表现求本期、本年的表现

当前没有评论!

第一个在本文留言。

发表评论

名字(必须)
邮箱(必须),(永不被公布)
网址(建议)

字体为 粗体 是必填项目,邮箱地址 永远不会 公布。

允许部分 HTML 代码:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
URLs(网站链接)必须完整有效 (比如: http://www.bi-professional.com),所有标签都必须完整的关闭。

超出部分系统将会自动分段及换行。

请保证评论内容是与日志或 Blog 内容相关的,灌水、攻击性或不恰当的评论 可能 会被编辑或删除。