Ssas 根据包含的维度,度量值的不同度量值聚合

Ssas 根据包含的维度,度量值的不同度量值聚合,ssas,mdx,aggregation,Ssas,Mdx,Aggregation,我对度量值的聚合有问题。 现实情况是,客户希望分析购买数量与该周进入商店的客户数量的比率。 我们知道每周有多少客户进入,有多少购买以及购买类型(昂贵、适中、便宜)。 因为有不同的采购类型,所以会为该地点和该周创建多行。因此,复制相同的度量(Walkingstomers数) 我希望看到的是,当我在location和date维度中进行聚合时,度量值将被汇总。当其他维度就位时,如何避免总和聚合 如果我们在报告中都有日期、地点和购买类型维度,那么看起来还可以 但是当我删除Purchase Type维

我对度量值的聚合有问题。 现实情况是,客户希望分析购买数量与该周进入商店的客户数量的比率。 我们知道每周有多少客户进入,有多少购买以及购买类型(昂贵、适中、便宜)。 因为有不同的采购类型,所以会为该地点和该周创建多行。因此,复制相同的度量(Walkingstomers数)

我希望看到的是,当我在location和date维度中进行聚合时,度量值将被汇总。当其他维度就位时,如何避免总和聚合

如果我们在报告中都有日期、地点和购买类型维度,那么看起来还可以
但是当我删除Purchase Type维度时,我希望Location1仍然显示100,因为Purchase Type不会影响输入到某个位置的客户数量。然而,当我删除日期维度时,我希望看到Location1有250个(第一周有100个,第二周有150个)。该网站只允许我添加两个链接。对不起。

有两种方式:慢和快

1(纯MDX):

然而,对于大尺寸,你可能会发现它非常慢

2(一点MDX+DWH):使用以下结构向多维数据集添加新度量值:

select 
      WeekStartDate,
      Location,
      MaxWalkIn = max(WalkIn)
from FactTableWalkIn
group by WeekStartDate, Location
将MaxWalkIn度量值与总和聚合+计算度量值相加:

IIF(
      [Purchase Type].[Purchase Type].CurrentMember is [Purchase Type].[Purchase Type].DefaultMember,
      [Measures].[MaxWalkIn],
      [Measures].[Number Of Walk In Customers]
)

你能展示一下希望的结果吗?我不知道你想要什么。您可以将NumberOfWalkingsTomers测量组的IgnoreUnrelatedDimensions设置为false,以避免复制。谢谢Danylo。我尽可能地更新了描述。采购类型维度并不总是不相关的。它不会影响走进店的顾客数量,但会影响购买的数量。我只需要显示位置级别内的最大值,但当我在城市级别上进行聚合时,我希望将其相加。它会返回300作为位置1,对吗?你只需要100,对吗?当你把一天的水平,而不是一周,你应该得到什么?你能创建一个伪公式吗?例如:sum(周,sum(地点,max(类型,访问)),没错。我需要100表示所有PurchaseType(当报告中未添加PurchaseType维度时)。没有日间水平。事实总是映射到date维度上的weekstart日期。您创建的公式实际上清楚地解释了这种情况。谢谢Danylo,我尝试了第一种方法。仅使用下面计算的度量值似乎可以解决这个问题。[Measures].[MaxPurchaseType]作为Max(现有[Purchase Type].[Purchase Type].[Purchase Type].[Purchase Type].成员[Measures].[Walk-In Customers]数量]),我现在有两个问题要问你。在使用上面的MDX表达式时,您能解释一下您的逻辑吗?(现有采购类型…)如果存在其他维度,会发生什么情况;与“购买类型”类似,它不求和,但使用最大值?我们如何避免在所有其他维度上求和?它不会避免聚合,它会分别为每个购买类型获取一个值,并从中获取最大值。如果需要每条记录的最大值(无论使用什么维度),则必须使用最大聚合添加度量值(请参见我的第二种方法)。嗨,Danylo,使用第一种方法,我得到的结果不正确。例如,如果我聚集到城市级别;对于不同的购买类型,走进店的客户总数看起来不同,原因是如果没有该类型的购买,那么走进店的客户数为零。(事实上,步行入店的客户数量应该根据城市内的门店位置进行汇总)您认为我们可以从不同的角度来看待这种情况吗?例如仅当位置维度级别为“存储”且日期维度级别为“周开始日期”时的最大值?对于这些维度的较高级别(如年份或城市),我们开始汇总?你认为范围语句有用吗?范围语句不会有多大帮助。老实说,我有点迷路了。你能把你最初的问题修改一下吗?用“你有”和“你需要”这样的截图替换每个案例的截图。很难预测所有情况,因此我强烈建议推广第二种方法,它将使不同维度和属性的使用情况更加可预测。
IIF(
      [Purchase Type].[Purchase Type].CurrentMember is [Purchase Type].[Purchase Type].DefaultMember,
      [Measures].[MaxWalkIn],
      [Measures].[Number Of Walk In Customers]
)