FIRSTNONBLANK (DAX) Power BI - 没有自动排序

FIRSTNOTBLANK (DAX) Power BI - Without Auto-ordering

似乎 PowerBI 正在自动订购我的 table,我不知道为什么。所以,我有这个 table(我从 Excel 文件导出的)

Colonne 1
7
25
1
8
3

每当我做一个New Mesure,用这个公式:

Mesure = FIRSTNONBLANK(Feuil1[Colonne 1];0)

它给了我号码1。如果我 LASTNONBLANK,它 returns 我的号码 25。所以它清楚地自动排序我的数据集,但每当我查看软件的“数据”选项卡时,我都会看到我的数据按照我希望的方式排序。

知道如何保持默认顺序吗?

不幸的是,这正是 FIRSTNONBLANK()LASTNONBLANK() 的行为。他们 iterate the values of a column based on their native sort order (i.e. data type). 因此, FIRSTNONBLANK 将 return 最小的数字 1LASTNONBLANK 最大的数字 25。通常,在使用 DAX 时,您不能对 table 或列中值的排序顺序做出假设。

因此,我的建议是您可以显式编写逻辑来找到目标值。假设 table 是根据日期排序的,您可以找到 earliest/latest 日期的键(根据您的用例),然后使用该键查找值。

Target = 
VAR TargetKey = 
CALCULATE(
    VALUES(Table1[Key]),
    FILTER(
        Table1,
        Table1[Date] = MIN(Table1[Date]) // or MAX(Table1[Date])
    )
)
RETURN
LOOKUPVALUE(Table1[Colonne 1], Table1[Key], TargetKey)