DAX RANKX:为什么返回1?

时间:2018-09-25 14:52:01

标签: powerbi dax rank

我正在使用AdventureWorks DB,我想按转售总额对转销商进行排名。因此,基本上该表如下所示:

enter image description here

我使用以下措施对其进行排名:

Rank Reseller = RANKX(ALL(ResellerSales), MAX(ResellerSales[SalesAmount]),,1)

但是它仅返回1作为等级。

enter image description here

我关注了以下两个视频:

https://www.youtube.com/watch?v=z2qzJVeYhTY

https://www.youtube.com/watch?v=SsZseKOgrWQ&t=603s

但是我不明白是怎么回事!

2 个答案:

答案 0 :(得分:0)

要按[SalesAmount]对[ReSellerkey]进行排名,您需要执行以下操作:

Rank Sales Amount := 
    RANKX(
        'Table',
        'Table'[SalesAmount],
        ,
        ASC,
        Dense
        )

答案 1 :(得分:0)

这与Rankx评估de Aggregation的当前范围有关。

尝试用CALCULATE包装汇总,您可能希望SUM而不是MAX:

CategoryForms

您可以像这样创建一个度量,并在RANKX上使用它,因为它是一种度量,无需显式添加CALCULATE即可起作用:

Rank Reseller = RANKX(ALL(ResellerSales), CALCULATE(SUM(ResellerSales[SalesAmount])))

编辑:

Sales Amount = SUM(ResellerSales[SalesAmount])

Rank Reseller = RANKX(ALL(ResellerSales), [Sales Amount])

尝试一下。