如果ssis与查找表匹配,则交换数据流中的某些值

时间:2015-05-29 17:03:57

标签: ssis sql-server-2008-r2 transform lookup

这是我的问题 - 在我的数据流中,我们在一列中有一些值,我们想根据查找表交换其他值。

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

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

如果我在SQL Server数据库中有一个如下所示的查找表:

Value1    Value2
C         Y
D         Z

然后我希望我的包只交换那些值,因此结果数据流将如下所示:

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

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

1 个答案:

答案 0 :(得分:0)

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

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

    ISNULL(Value2) ? Value : Value2