Ssas 使用MDX计算按比例的份额
我有一个SSAS多维数据集,显示投资者及其在基金中的投资价值。基金价值和按比例分配的股份实际上是表中的。我创建了一个计算过的度量,它只是将基金价值*份额相乘。问题出在总行。现在显示的是标记为错误的行。我想展示的是标有右边的那一行Ssas 使用MDX计算按比例的份额,ssas,mdx,olap,Ssas,Mdx,Olap,我有一个SSAS多维数据集,显示投资者及其在基金中的投资价值。基金价值和按比例分配的股份实际上是表中的。我创建了一个计算过的度量,它只是将基金价值*份额相乘。问题出在总行。现在显示的是标记为错误的行。我想展示的是标有右边的那一行 Investor Fund Value Share Investor Value Investor 1 100,000 0.4 40,000 Investor 1 200,000 0.3 60,000 Total
Investor Fund Value Share Investor Value
Investor 1 100,000 0.4 40,000
Investor 1 200,000 0.3 60,000
Total 300,000 0.7 210,000 <== WRONG
Total 100,000 <== RIGHT
投资者基金价值股票投资者价值
投资者1 100000 0.4 40000
投资者1 200000 0.3 60000
总计300000.7210000最简单的方法:在olap数据库的DSV(在相应的事实表中)中创建新的计算字段(编写表达式)。之后,在度量中使用此字段(聚合类型总和)。如果性能可能存在问题,则Max answer是一种解决方法(预计算)。可以使用MDX计算成员来解决prorarta(如果维度很大,性能可能会成为一个问题)
进一步研究这个解决方案的问题是,我需要一个维度,其中10万和20万基金的价值是不同的(例如,[份额])。您能描述一下您的维度吗?我知道这已经有几个月了,但我会使用范围语句用正确的计算覆盖该单元格。检查此项:查看文章需要登录,但免费。我简化了数据模型以突出问题。基金价值和投资者都是多对多关系,因此不可能计算字段。