首页 > 解决方案 > DAX如何返回第N个选定的项目

问题描述

我正在尝试从过滤器中使用的文本值列表中查找第 N 个选定项目。我找不到一个好的解决方案来做到这一点。以下是我目前拥有的(在 DAX Studio 中)

//First get all of the Selected Scenarios and then Rank them based on alphabetical names
//Then filter the Rank to the specific one that I want

Define
var Scenarios = 
Filter(
    AddColumns(ALLSELECTED('Financial All Scenarios'[Scenario]),
    "Rank", RANKX(
        ALLSELECTED('Financial All Scenarios'[Scenario]), 
        'Financial All Scenarios'[Scenario], 
        , 
        ASC
    )
), 
[Rank] = 2)

//Return just the Scenario value for the row that is returned above.
EVALUATE(

MinX(Scenarios, [Scenario])
//Scenarios
)

以上给了我查询中指定的表达式的错误不是有效的表表达式。

我很清楚为什么或以另一种方式让它发挥作用。

标签: powerbidax

解决方案


可能下面的这个措施会给你预期的输出 -

nth_scenario = 

MAXX(
    TOPN(
        2,
        ALLSELECTED('Financial All Scenarios'),        
        'Financial All Scenarios'[Scenario], 
        ASC
    ),
    'Financial All Scenarios'[Scenario]
) 

推荐阅读