【问题标题】:Power BI taking min value from Multiple text columnsPower BI 从多个文本列中获取最小值
【发布时间】:2021-06-24 10:44:54
【问题描述】:

我有这些数据

ID  Daig 1  Daig 2  Daig 3  Daig 4
AA1     5    X        X      2
AA2     X    1        4      X
AA3     7    3        X      X
AA4     X    X        2      6
AA5     X    X        X      3

我想从忽略文本的列中提取最小值(X) 我写了下面的DAX

Min Value = VAR V1 = IF(Data[Daig 1 ]="X",100,VALUE(Data[Daig 1 ]))
            VAR V2 = IF(Data[Daig 2]="X",100,VALUE(Data[Daig 1 ]))
            VAR V3 = IF(Data[Daig 3]="X",100,VALUE(Data[Daig 1 ]))
            VAR V4 = IF(Data[Daig 4]="X",100,VALUE(Data[Daig 1 ]))
            VAR temp = {V1, V2, V3, V4}
            RETURN
            MINX(Data,temp)

它给出错误

预期输出

【问题讨论】:

  • 正如我所见,您为每个 var(第三个参数)Data[Daig1] 输入,这是不正确的,可能会生成此错误消息。
  • @msta42a 我该如何纠正它。谢谢

标签: powerbi dax reporting


【解决方案1】:

这是一个衡量标准:

Min Value =
MIN (
    MIN (
        MIN (
            VALUE ( SUBSTITUTE ( SELECTEDVALUE ( Data[Daig 1] ), "X", 999 ) ),
            VALUE ( SUBSTITUTE ( SELECTEDVALUE ( Data[Daig 2] ), "X", 999 ) )
        ),
        VALUE ( SUBSTITUTE ( SELECTEDVALUE ( Data[Daig 3] ), "X", 999 ) )
    ),
    VALUE ( SUBSTITUTE ( SELECTEDVALUE ( Data[Daig 4] ), "X", 999 ) )
)

我将这种方法用作新的计算列:

Min_Value = 

var __innerTab = 
    SELECTCOLUMNS(
        GENERATE( VALUES(Data[ID])
    , ROW(
        "d1", IF(Data[Daig 1]="X",100,VALUE(Data[Daig 1])),
        "d2", IF(Data[Daig 2]="X",100,VALUE(Data[Daig 2])),
        "d3", IF(Data[Daig 3]="X",100,VALUE(Data[Daig 3])),
        "d4", IF(Data[Daig 4]="X",100,VALUE(Data[Daig 4]))))
        ,
        "min", min(min( Min([d1], [d2]),[d3]),[d4]))
return
__innerTab

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-18
    • 1970-01-01
    • 2016-11-28
    • 1970-01-01
    • 2021-09-22
    • 1970-01-01
    相关资源
    最近更新 更多