HANA Studio:具有多个 IF 语句的计算列

HANA Studio: Calculated Column with multiple IF-Statement

我的计算视图中有以下数据集:

我正在尝试为键“SAPClient Warehouse TU_NUM”创建两个额外的计算列:

  1. 列应该 return ''X", if ((TXT04='CHKO') and (STATUS_VALUE='X')) AND ( (TXT04='CHKI') 和 (STATUS_VALUE='X'))

  2. 列应该return "X", if ((TXT04='CHKO') and (STATUS_VALUE=' ')) AND ((TXT04='CHKI') 和 (STATUS_VALUE='X'))

当我尝试创建第一列时,我使用了以下代码:

if("TXT04"='CHKO',if("STATUS_VALUE"='X','X',' '),' ') and if(" TXT04"='CHKI',if("STATUS_VALUE"='X','X',' '),' ')

但得到以下语法错误:

你能告诉我如何更好地解决我的问题吗?

希望得到任何帮助。

谢谢和BR。

Function IF returns 表达式中的字符串值,因此没有在字符串上定义 AND 运算符(更准确地说,AND 是一个函数,正如您通过跟踪看到的那样)。 但我认为您的代码中存在错字,因为 (A and B) and (C and D) 等于 A and B and C and D,您尝试“AND”TXT04='CHKO'TXT04='CHKI',这显然是 FALSE

如果您只有两个值,则可以使用单个 IF if(<1'st group of conditions>, 'X', '') 并相应地对所有条件进行分组。如果您有第三个值('X' 和 '' 除外),则将代码段中的 '' 替换为第二个 if。对于两个以上的输出值,我更喜欢 case 语句。