DAX测量仅对字符串列上的数字值和数字和字符串求和

时间:2018-06-07 13:19:01

标签: powerbi dax

如何创建DAX度量以仅汇总数值?假设我们有简单的样本数据,如下所示。 enter image description here

我认为这段代码可以完成这项工作,但失败了。

m1 = IF( MAX(Table1[category]) = "apples", SUM(Table1[units]) , BLANK() )

当我尝试将此度量添加到仅为苹果和李子应用过滤器的表时,我收到错误消息:

enter image description here

我需要首先应用过滤器,输出文本值,然后仅对数值求和的东西。

2 个答案:

答案 0 :(得分:1)

这是存储数据的一种可怕方式,但可以按照您的要求进行操作。

尝试此措施,例如,

= SUMX(FILTER(Table1, Table1[type]="number"), VALUE(Table1[units]))

VALUE函数将字符串转换为数字值,我们只对type为“数字”的行求和。

答案 1 :(得分:0)

主要问题是SUM永远不会对定义为文本的列起作用。例如,如果您的列只是数字,但列定义为文本,则Measure:= SUM ( table[ units] )始终会出错。

真正做到你想要的唯一方法就是按类型将数据放在不同的列中。然后在一个基于列返回的计算量度内。