在SSIS中插入字符
Insert characters in SSIS
我有一个要求,我需要在间隔 2,3,3 之后为特定列插入特殊字符
例子
ABCDEFGHIJKL -> AB-CDE-FGH-IJKL
我知道我需要在 SSIS 2012 中使用 Derived 列,但我无法使用表达式。如果有人能用正确的表达方式帮助我,我将不胜感激
逻辑是您需要在给定的序号位置将字符串分成两部分,然后将这些部分与您的特殊字符连接起来。
派生列会有点难看,因为该语言不具备 .net 库的强大功能。我们将大量使用和滥用 SUBSTRING 来完成工作
SUBSTRING(MyCol, 1, 2) + "-" + SUBSTRING(MyCol, 2, LEN(MyCol) -2)
这适用第一个特殊字符逻辑。为了简化问题,我会将此列作为 MyColStep1
添加到数据流中。然后,我添加了第二个派生列任务,该任务使用上述逻辑,但使用 MyColStep1 作为输入。采用这种方法将使调试变得非常非常容易(因为您可以在每个组件的输出路径上附加一个数据查看器)。
SUBSTRING(MyColStep1, 1, 6) + "-" + SUBSTRING(MyColStep1, 6, LEN(MyColStep1) -6)
等等
我有一个要求,我需要在间隔 2,3,3 之后为特定列插入特殊字符 例子
ABCDEFGHIJKL -> AB-CDE-FGH-IJKL
我知道我需要在 SSIS 2012 中使用 Derived 列,但我无法使用表达式。如果有人能用正确的表达方式帮助我,我将不胜感激
逻辑是您需要在给定的序号位置将字符串分成两部分,然后将这些部分与您的特殊字符连接起来。
派生列会有点难看,因为该语言不具备 .net 库的强大功能。我们将大量使用和滥用 SUBSTRING 来完成工作
SUBSTRING(MyCol, 1, 2) + "-" + SUBSTRING(MyCol, 2, LEN(MyCol) -2)
这适用第一个特殊字符逻辑。为了简化问题,我会将此列作为 MyColStep1
添加到数据流中。然后,我添加了第二个派生列任务,该任务使用上述逻辑,但使用 MyColStep1 作为输入。采用这种方法将使调试变得非常非常容易(因为您可以在每个组件的输出路径上附加一个数据查看器)。
SUBSTRING(MyColStep1, 1, 6) + "-" + SUBSTRING(MyColStep1, 6, LEN(MyColStep1) -6)
等等