在 qliksense 表达式中解码

Decode in qliksense expression

我的表达式中有解码函数,我在 qliksense 表达式中转换这个解码.. 看起来 qliksense 默认没有 decode 关键字

那么我如何在 qliksense 中转换此解码

SUM(DECODE(Rcount,0,DECODE(H.documentno,NULL,(C.gross- C.amont),0),0))

请帮忙

Qlik 中 Decode 的等价物是 if .. then .. else 语句。

您的语句可以转换为:

SUM(
  if( Rcount = 0,
    if( isNull(H.documentno), C.gross - C.amont, 0) 
    ,0)
)

如果我们从内部开始 Decode

DECODE(H.documentno,NULL,(C.gross- C.amont),0)

它可以被“翻译”为:如果H.documentnoNull那么returnC.gross- C.amont否则return0

而外层的Decode可以翻译成:if Rcount is 0 then return the inner Decode statement else return 0

有点warning/advice。一般来说,if .. then .. else 语句在表达式中可能会很慢(呃)。您可能看不到小数据集中的差异,但在 big/large 数据集中是可见的。如果您 可以 在加载脚本中移动此计算,而在前端仅 Sum() 结果,那么前端计算会更快