我目前在五角大楼使用MDX。目前我面临的问题是无法根据衡量标准获得前10名的计数。
也就是说,我想要编写MDX查询,以查找基于本年度销售额的前10名客户,并需要这些客户的上一年销售额。
我的问题是MDX查询对上一年和本年度的销售额求和,并列出了前10名。
如何根据本年度栏目获取前10名?
例如,
Customer Current Year Previous Year
A 100 200
B 150 125
C 200 -预期结果:
Customer Current Year Previous Year
C 200 -
B 150 125
A 100 200请帮帮我。
发布于 2014-05-06 18:18:24
Topcount函数接受3个参数、一个集合、要返回的项数和一个数字表达式。
假设您在行上有Customer.Members,并且已经定义了两个时间维度成员,并且Measures.Sales作为您的度量值,那么您可以使用
Select
TopCount( [Customer].Members, 3, ( [Measures].[Sales], [Time].[Current Year]) ) on Rows,
{ [Time].[Current Year], [Time].[Previous Year] } on Columns
From [My Cube]
Where [Measures].[Sales]TopCount将根据客户的排名返回前3名客户
([Measures].[Sales], [Time].[Current Year])如果您没有将这个元组指定为数字表达式,那么您将根据整个Measures.Sales值获得排名。
https://stackoverflow.com/questions/23467152
复制相似问题