Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powerbi 电源双Rankx和滤波器_Powerbi - Fatal编程技术网

Powerbi 电源双Rankx和滤波器

Powerbi 电源双Rankx和滤波器,powerbi,Powerbi,我得到了下表,希望添加计算列排名(最早的前3名),该列仅在状态为“O”时排名。请注意**排名(最早的前三名)**是期望的结果 Status Days open Rank (oldest top-3) C 1 O 1 4 O 2 3 C 3 C 4 C 5 O 6 2 O 7 1 C

我得到了下表,希望添加计算列排名(最早的前3名),该列仅在状态为“O”时排名。请注意**排名(最早的前三名)**是期望的结果

Status  Days open   Rank (oldest top-3)
C       1   
O       1           4
O       2           3
C       3   
C       4   
C       5   
O       6           2
O       7           1
C       8   
C       9
我有下面的代码,但他们不为我工作

Rank = IF(order[Status] = "C", BLANK(),
          RANKX(FILTER(order, order[Status] = "O"),
                order[Days open], , 1, Dense))
我得了前三名,而不是前三名。此外,使用filter可以过滤掉任何其他数据。我试图用ALLSELECTED替换过滤器,但它不起作用。

Input 我创建了一个名为
order
的表,其中包含以下数据:

Status  Days open
C       1
O       1
O       2
C       3
C       4
C       5
O       6
O       7
C       8
C       9
代码 然后,我使用以下DAX添加了一个计算列:

Rank = 
IF('order'[Status] = "C", 
    BLANK(),
    RANKX(
        FILTER('order', 'order'[Status] = "O"),
        'order'[Days open], 
        , 
        0, 
        Dense
        )
)
与DAX相比的唯一区别(除了格式化)是
RANKX
函数的倒数第二个选项是
0
,而不是
1
。 指示
0
按降序排列序列

输出

过滤器('order'、'order'[状态]=“O”)
,更改为
过滤器(全部('order')、'order'[状态]=“O”)
,否则,您的结果可能在一个表中完全相同