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 DAX计算列考虑多行生成结果_Powerbi_Dax_Powerbi Desktop - Fatal编程技术网

Powerbi DAX计算列考虑多行生成结果

Powerbi DAX计算列考虑多行生成结果,powerbi,dax,powerbi-desktop,Powerbi,Dax,Powerbi Desktop,我有一个这样的数据集 Reference_ID MyCode 1 NULL 1 S1010 1 NULL 1 1011 2 NULL 2 NULL 我想为1返回True,因为1的值

我有一个这样的数据集

Reference_ID        MyCode        
1                   NULL                
1                   S1010             
1                   NULL
1                   1011
2                   NULL  
2                   NULL     
我想为1返回True,因为1的值不是空、空或NULL。而假为2

Reference_ID        MyCode        ExpectedOutput
1                   NULL              True
1                   S1010             True
1                   NULL              True
1                   1011              True
2                   NULL              False
2                   NULL              False
如何在Power BI中使用DAX实现这一点?

尝试以下操作:

ExpectedOutPut =
SWITCH (
    TRUE (),
    Reference_ID = 1, TRUE (),
    Reference_ID = 2, FALSE (),
    BLANK ()
)
这对我有用

我使用COUNTROWS函数来实现这一点

Non_NULL_MyCodes = 
        Var required_PolicyNumber = (Sheet1[Reference_ID])
        Var numberofRows = CALCULATE(COUNTROWS(FILTER(ALL(Sheet1),Sheet1[Reference_ID] = required_PolicyNumber && Sheet1[MyCode] <> "NULL")))
        Var result = IF(numberofRows>0,True,False)
return result

这不是OP所要求的。您需要首先按Id分组,然后查找一个组是否至少有一个非空值,然后才确定是真还是假。你的代码不能这样做。我的错,如果这是OP的要求,那么这个代码肯定不会工作。最好先筛选表,然后应用逻辑。