ssis 交换数据流中的一些值,如果它们匹配查找 table

ssis swap some values in a data flow if they match a lookup table

这是我的问题 - 在我的数据流中游,我们在一列中有一些值,我们希望根据查找将这些值交换为其他值 table。

例如,如果我有这样的行集:

Key   Value
1     A
2     B
3     A
4     C
5     D
6     B
...   ...

如果我在 SQL 服务器数据库中查找 table,如下所示:

Value1    Value2
C         Y
D         Z

然后我希望我的包只交换这些值,这样生成的数据流将如下所示:

Key   Value
1     A
2     B
3     A
4     Y
5     Z
6     B
...   ...

哪些组件会产生最简单的解决方案?

您可以使用查找组件,然后:

  • 将其设置为忽略失败
  • 不匹配的值将 return 查找值
  • 为空
  • 使用派生列表达式填充查找成功的位置

    ISNULL(Value2) ? Value : Value2