你好,
我有一张桌子:
| 姓名 | 分数 | 原因 | 分数2 |
| 约翰 | 100 | 测试 | |
| 担 | 95 | 硬件 | |
| 埃利 | 92 | 生病的 | |
我想在“Score2”列中添加一个 JSL 公式,该公式从“Score”中获取值,除非“Reason”列中有“Sick”一词:
| 姓名 | 分数 | 原因 | 得分 2 |
| 约翰 | 100 | 测试 | 100 |
| 担 | 95 | 硬件 | 95 |
| 埃利 | 92 | 生病的 | 100 |
以下是我所拥有的,但它没有按照我的需要执行 Else:
dt1 <<NEW column=""></NEW>
先感谢您。
您正在创建一个数字列,但您试图给它一个字符串列值“100”。通过在 100 周围加上引号,您是在告诉它将该值设为字符串。保留引号以分配数值。
dt1 << New Column( "Score2",
Numeric,
"Continuous",
formula( If( :Reason == "Sick", 100, :Score ) )
);
如果列 Score 不是数据表中的数字列,也可能存在问题。如果是字符列,请将代码更改为:
dt1 << New Column( "Score2",
Numeric,
"Continuous",
formula( If( :Reason == "Sick", 100, num( :Score ) ) )
);