MDX查询表中当前行的百分比

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

我有一个带有FactTicket的SSAS多维数据集,它具有TicketsSold度量。立方体有很多尺寸。让我们将其称为“日期”,“代理”和“地理位置”。我可以创建一个表(如果有关系,我们将使用Power BI服务)并将其放入所有维度,任何维度以及TicketsSold度量中。我想做的是,还有另一种方法,可以计算当时表中总行数。所以假设我有以下数据:

Date        Agent       Geo     TicketsSold
2020-04-01  Moulder     US      12
2020-04-01  Moulder     UK      4
2020-04-02  Moulder     US      10
2020-04-03  Moulder     UK      5
2020-04-01  Skully      US      16
2020-04-01  Skully      UK      12

我希望能够过滤任何度量的报告,并使用TicketsSold和百分比显示其他度量。例如,在2020-04-01和2020-04-02上过滤:

Agent       Geo     TicketsSold     %ofTicketsSold
Moulder     US      22              40.74 %
Moulder     UK      4               7.40 %
Skully      US      16              29.63 %
Skully      UK      12              22.22 %
TOTAL               54              100 %

或仅在Agent Moulder上过滤:

Date        TicketsSold     %ofTicketsSold
2020-04-01  16              51.61 %
2020-04-02  10              32.26 %
2020-04-03  5               16.13 %
TOTAL       31              100 %

对我来说很明显,我可能需要的是某种方式-对于表中的每一行-获取表本身的总数,然后将该行自己的TicketsSold除以该总数。但是我似乎无法找出创建这种计算的简单方法。这是可行的,而不必定义所有可能的维的元组?

谢谢!

powerbi ssas mdx
1个回答
2
投票
select {[Measures].[Internet Sales Amount]} on columns, non empty {([Product].[Category].[Category],[Product].[Subcategory].[Subcategory])} on rows from [Adventure Works] where [Date].[Calendar Year].&[2013]

结果enter image description here

现在让我们添加新列

with member measures.PercentageOFTotal as round(([Measures].[Internet Sales Amount]/sum(Axis(1),[Measures].[Internet Sales Amount]))*100,2) select {[Measures].[Internet Sales Amount],measures.PercentageOFTotal } on columns, non empty {([Product].[Category].[Category],[Product].[Subcategory].[Subcategory])} on rows from [Adventure Works] where [Date].[Calendar Year].&[2013]

结果

enter image description here
© www.soinside.com 2019 - 2024. All rights reserved.