在Cognos Analytics 11.1.x中具有多个条件的情况下的情况

问题描述

我正在使用嵌入在Watson Studio中的Cognos,并尝试使用case语句创建以下计算(month_3和avg2m均为度量)。 Cognos报告针对查询'validateQuery'的数据项'calculation-new'的数据项'calculation-new'发现XQE-V5-0017 V5语法错误,在“((allin_shaped_csv.month_3-avg2m)/ avg2m)/”之后发现无效令牌“

您可以帮助解决语法错误吗?

case (( allin_shaped_csv.month_3 - avg2m ) / avg2m )
   when <-0.50 then -100;
   when <-0.20 then -50;
   when <0 then -20;
   when 0 then 0;
   when >0 then 20;
   when >0.50 then 50;
   when >0.99 then 100;
end case;

解决方法

它看起来是这样工作的:

case 
   when (( allin_shaped_csv.month_3 - avg2m ) / avg2m )<-0.50 then -100
   when (( allin_shaped_csv.month_3 - avg2m ) / avg2m )<-0.20 then -50
   when (( allin_shaped_csv.month_3 - avg2m ) / avg2m )<0 then -20
   when (( allin_shaped_csv.month_3 - avg2m ) / avg2m )=0 then 0
   when (( allin_shaped_csv.month_3 - avg2m ) / avg2m )>0 then 20
   when (( allin_shaped_csv.month_3 - avg2m ) / avg2m )>0.50 then 50
   when (( allin_shaped_csv.month_3 - avg2m ) / avg2m )>0.99 then 100
   else 0
end