If statement DAX是否用于测量

If statement DAX是否用于测量,if-statement,return,dax,tabular,measure,If Statement,Return,Dax,Tabular,Measure,如何将if-else用于度量中的DAX。如果行值=1,则取var a计算值,否则取var b计算值 x:=var a=[DATA1] 变量b=[DATA2] 返回(如果([小时]=1),a,b) 我使用上面的公式得到了错误,您的问题似乎是在创建度量值时没有聚合列。度量值仅用于聚合给定上下文中的数据,通常,如果要对每行执行计算,则应使用计算列而不是度量值 计算列的DAX表达式应为: MyColumn = IF([HOUR] = 1, [DATA1], [DATA2]) 否则,如果要使用度量,则必

如何将if-else用于度量中的DAX。如果行值=1,则取var a计算值,否则取var b计算值

x:=var a=[DATA1]
变量b=[DATA2]
返回(如果([小时]=1),a,b)


我使用上面的公式得到了错误,您的问题似乎是在创建度量值时没有聚合列。度量值仅用于聚合给定上下文中的数据,通常,如果要对每行执行计算,则应使用计算列而不是度量值

计算列的DAX表达式应为:

MyColumn = IF([HOUR] = 1, [DATA1], [DATA2])
否则,如果要使用度量,则必须在给定上下文中明确聚合列值,即:

MyMeasure =
VAR a =
    FIRSTNONBLANK ( ExampleTable[Data1], 0 )
VAR b =
    FIRSTNONBLANK ( ExampleTable[Data2], 0 )
RETURN
    IF ( SUM ( ExampleTable[Hour] ) = 1, a, b )
或者简单地说:

MyMeasure =
IF (
    SUM ( [Hour] ) = 1,
    FIRSTNONBLANK ( ExampleTable[Data1], 0 ),
    FIRSTNONBLANK ( ExampleTable[Data2], 0 )
)
让我知道这是否有帮助