SSIS 派生列替换表达式

SSIS Derived column Replace expression

我正在使用替换函数将字符串(公式)Var(A) 替换为列(值)AM01,将 Var(B) 替换为 BM01,直到 Var(E),但让我们坚持使用 A 和B 现在。 AM01 = 4 BM01 = 5

第一个替换工作正常,这是因为 Var(A) 在每个公式中。

     REPLACE(M01,(DT_WSTR,100)"Var(A)",(DT_WSTR,100)AM01)

结果:

Var(A) = 4
Var(A)/Var(B) = 4/Var(B)

当我在这个带有公式的列之后有第二个派生列时

     REPLACE(M01,(DT_WSTR,100)"Var(B)",(DT_WSTR,100)BM01)

走不好取决于公式:

Var(A) = NULL
Var(A)/Var(B) = 4/5

我仔细阅读了这篇文章,似乎如果 REPLACE 函数没有找到匹配项,它会给出 NULL,我希望它在没有匹配项时不执行任何操作,保留原始值。

有什么建议吗?不幸的是,我无法在 SQL 中进行替换,在到达这一点之前,很多包都是 运行 并且写入数据库以进行此更新将花费大量时间,并且需要临时 table.

尝试使用三级 IIF 函数:

Something == Null ? (Return the original value) : (Return the formula(value))

以上明显是伪代码