MDX秩计算度量值每行有1个
我试图在MDX查询中创建一个计算出的度量值,该查询获取按度量值排序的维度的排名。问题是,对于每一行,我得到的都是1,或者,如果我更改排序顺序,则是维度的计数 这是我的尺寸MDX秩计算度量值每行有1个,mdx,Mdx,我试图在MDX查询中创建一个计算出的度量值,该查询获取按度量值排序的维度的排名。问题是,对于每一行,我得到的都是1,或者,如果我更改排序顺序,则是维度的计数 这是我的尺寸 MEMBER [Measures].[Approved wk to wk Rank] AS RANK ( [FRR Group Matrix].[Group Name].CurrentMember, ORDER( [FRR Group Matrix].[Group Name].[Group Name].ALLM
MEMBER [Measures].[Approved wk to wk Rank] AS RANK (
[FRR Group Matrix].[Group Name].CurrentMember,
ORDER(
[FRR Group Matrix].[Group Name].[Group Name].ALLMEMBERS, [Measures].[Approved wk to wk %], BDESC
),
[Measures].[Approved wk to wk %]
)
我的度量值在我的列中,我的维度在行中。这是我定义行的地方,也是我认为存在问题的地方:
{ ([FRR Group Matrix].[Group Name].[Group Name].ALLMEMBERS
* [FRR Group Matrix].[FRRCode].[FRRCode].ALLMEMBERS ) } ON ROWS
如果我改为以下内容,我将获得一个好的排名,但我仍然希望保留这两列
{ [FRR Group Matrix].[Group Name].[Group Name].ALLMEMBERS } ON ROWS
那么,如何使我的秩与这两个元组一起工作呢?将整个元组放入
秩和顺序中NONEMPTY
对于您的特定问题可能不是必需的,但它将从您的排名中排除空白,并可能加快执行时间
SET [X] AS
ORDER(
NONEMPTY(
[FRR Group Matrix].[Group Name].[Group Name]
*
[FRR Group Matrix].[FRRCode].[FRRCode],
[Measures].[Approved wk to wk %]
),
[Measures].[Approved wk to wk %],
BDESC
)
MEMBER [Measures].[Approved wk to wk Rank] AS
RANK (
(
[FRR Group Matrix].[Group Name].CurrentMember,
[FRR Group Matrix].[FRRCode].CurrentMember
),
[X],
[Measures].[Approved wk to wk %]
)
两个行属性之间可能存在依赖关系?然后使用顺序([FRR组矩阵].[Group Name].[Group Name].[Group Name].[All MEMBERS],[FRR组矩阵].[FRR组矩阵].[FRRCode].[All].[code>是“所有成员”,BDESC)
可能会有所帮助第二个属性。@danielGimenez-NONEMPTY
可能会使这个脚本更快,而不管应用程序如何,所以我对您所做的编辑有点不相信。如果你能解释为什么使用who元组解决了这个问题,那就太好了……似乎你想对这两个层次结构进行排序,因此在顺序
部分以及排名
的第一个参数中都包含了这一点非常重要(这不是一个很好的解释抱歉-@FrankPI你能解释一下为什么这个解决方案有效吗?)