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 Power Bi:在所有三行都存在的情况下创建一个求和度量值_Powerbi - Fatal编程技术网

Powerbi Power Bi:在所有三行都存在的情况下创建一个求和度量值

Powerbi Power Bi:在所有三行都存在的情况下创建一个求和度量值,powerbi,Powerbi,为了便于理解,该表有3列:(日期、项目、值)。我想在calculate sum度量中添加一个条件方面,使其仅在出现第1项时求和。现在第3项是一行,它有时会自己出现,但我不希望这样,因为它对我的数据集是误报 当前: Measure = CALCULATE(SUM('Table'[Values]), FILTER('Table', 'Table'[Item] = "Item 1" || 'Table'[Item] = "Item 2" || 'Table'[Item] = "Item 3" ))

为了便于理解,该表有3列:(日期、项目、值)。我想在calculate sum度量中添加一个条件方面,使其仅在出现第1项时求和。现在第3项是一行,它有时会自己出现,但我不希望这样,因为它对我的数据集是误报

当前:

Measure = CALCULATE(SUM('Table'[Values]),

FILTER('Table',
'Table'[Item] = "Item 1" ||
'Table'[Item] = "Item 2" ||
'Table'[Item] = "Item 3" 
))

您可以创建一个计算列,以使除Item1之外的所有其他情况的值均为0:

Column = IF(Table[Item]="C",Table[value],0)
现在,您可以对本专栏进行总结,以获得所需的结果

根据评论进行编辑:

    Check_Column = 
         VAR Step1=CALCULATE(MAX('Table'[Item]),CALCULATETABLE('Table',ALLEXCEPT('Table','Table'[Month]),'Table'[Item]<>"C"))
         VAR Step2 = IF(Step1=BLANK(),0,'Table'[Value])
    Return Step2
检查列=
VAR Step1=计算(最大值('Table'[项目])、计算表('Table',ALLEXCEPT('Table','Table'[月])、'Table'[项目]“C”))
VAR Step2=IF(Step1=BLANK(),0,'Table'[Value])
返回步骤2

上述计算不会计算任何只有C值的记录。您只需将列相加即可得到所需结果。

您可以创建一个计算列,将除第1项外的所有其他情况的值设为0:

Column = IF(Table[Item]="C",Table[value],0)
现在,您可以对本专栏进行总结,以获得所需的结果

根据评论进行编辑:

    Check_Column = 
         VAR Step1=CALCULATE(MAX('Table'[Item]),CALCULATETABLE('Table',ALLEXCEPT('Table','Table'[Month]),'Table'[Item]<>"C"))
         VAR Step2 = IF(Step1=BLANK(),0,'Table'[Value])
    Return Step2
检查列=
VAR Step1=计算(最大值('Table'[项目])、计算表('Table',ALLEXCEPT('Table','Table'[月])、'Table'[项目]“C”))
VAR Step2=IF(Step1=BLANK(),0,'Table'[Value])
返回步骤2

上面的计算不会计算任何只有C值的记录。您可以简单地对该列求和,以得到您想要的结果。

很抱歉,我意识到我的陈述措辞有点含糊不清。当项目1有值时,我仍然希望项目3显示值,但前提是只有项目1存在。对我来说,更难理解的是,项目1只有在有值时才有一个数据库行,因此在任何给定月份该项目都没有值时,它就不存在了。你能共享表中的样本数据和该数据的所需输出吗?我不太了解如何正确共享数据,但这可能会起作用?这就更清楚了。我添加了一个编辑以适应您的请求…尝试一下,并让我知道它是否有效…因此我添加了列,但假设我没有做正确的操作,因为排除项的输出仍然显示一个值。我想知道这是否是因为我需要引用3列,而不仅仅是月份列(还有客户编号和年份)。希望这幅数据图能有所帮助。对不起,我意识到我的陈述措辞有点含糊不清。当项目1有值时,我仍然希望项目3显示值,但前提是只有项目1存在。对我来说,更难理解的是,项目1只有在有值时才有一个数据库行,因此在任何给定月份该项目都没有值时,它就不存在了。你能共享表中的样本数据和该数据的所需输出吗?我不太了解如何正确共享数据,但这可能会起作用?这就更清楚了。我添加了一个编辑以适应您的请求…尝试一下,并让我知道它是否有效…因此我添加了列,但假设我没有做正确的操作,因为排除项的输出仍然显示一个值。我想知道这是否是因为我需要引用3列,而不仅仅是月份列(还有客户编号和年份)。希望这幅数据图能有所帮助。