如何将where子句编码为计算成员?

问题描述 投票:0回答:2

第一个查询按我的需要工作。但是当我试图用计算成员重写它把它放在我的立方体中时,它就崩溃了。

select non empty [Measures].[Demanda Real] on 0,
non empty [Agente Distribuidor].[Nombre Distribuidor].[Nombre Distribuidor].members on 1
from Demanda
where [SkSubmercadoUsuario]

First MDX query results

这是我失败的尝试:

with member [Measures].[Demanda Real Dos] 
as
([Measures].[Demanda Real], [SkSubmercadoUsuario])
select [Measures].[Demanda Real Dos]  on 0,
non empty [Agente Distribuidor].[Nombre Distribuidor].[Nombre Distribuidor].members on 1
from Demanda

我需要的是通过[SkSubmercadoUsuario]切片我的立方体,但它不能通过where子句。我需要创建一个用这个命名集切割度量的度量[SkSubmercadoUsuario]

ssas mdx
2个回答
0
投票

也许你需要做这样的事情

with member [Measures].[Demanda Real Dos] 
as
SUM({[Sk Submercado Usuario].&[52], [Sk Submercado Usuario].&[622]}, 
     [Measures].[Demanda Real] )

select [Measures].[Demanda Real Dos]  on 0,
non empty [Agente Distribuidor].[Nombre Distribuidor].[Nombre Distribuidor].members on 1
from Demanda

0
投票

我不太明白你想要做什么。您是否只想创建第二个度量[度量]。[Demanda Real]在您的查询中重命名为[Measures]。[Demanda Real Dos]或者您想在多维数据集的“计算脚本部分”中创建度量吗?在第一种情况下,我认为您不需要移动条件部分。试试这个 :

with member [Measures].[Demanda Real Dos] 
as
([Measures].[Demanda Real])
select [Measures].[Demanda Real Dos]  on 0,
non empty [Agente Distribuidor].[Nombre Distribuidor].[Nombre Distribuidor].members on 1
from Demanda
where [SkSubmercadoUsuario]
© www.soinside.com 2019 - 2024. All rights reserved.