Qlik Sense IfNum与If Statement结合使用

时间:2017-10-08 20:47:16

标签: qlikview qliksense

我正在尝试在存在数字且该数字大于0的列上运行AVG,该列具有混合数据,大多数字段将具有数字但是一些信用结果返回NA或DNR。

以下表达式检出为OK,但不返回任何值。我知道AVG表达式正常工作,因为我在干净的数据上使用它。我相信错误来自IsNum

=if(IsNum(Credit) = '-1', Avg({< [Credit] = {"<>0"} >} [Credit]), (Credit))

1 个答案:

答案 0 :(得分:1)

在脚本中创建附加列可能更好,指示Credit值是否为数字。

if( isNum(Credit), 1, 0 ) as isNumberCredit

在此之后,你的表达变得简单。

avg( {< isNumberCredit = {1} >} Credit )

OR

avg( Credit * isNumberCredit )

使用此方法会降低较大数据集的性能。