如何根据datastage中的分隔符从单个列中分割数据?

时间:2016-08-09 13:27:45

标签: informatica datastage

我想在Datastage中执行以下方案。

我的源文件名为source.csv,如下所示,

Code_id

100

200

300

100200400

现在,我想根据分隔符(,)拆分第4行的记录。 预期结果应该是,

Code_id

100

200

300

100

200

400

我已经尝试过使用DCOUNT,Field数据存储功能。但我无法得到上面提到的确切结果。

请有人可以指导或建议一些想法吗?。

注意:在处理文件之前,我不知道分隔符的数量。

1 个答案:

答案 0 :(得分:0)

这是变压器环路处理的一个很好的例子。 首先使用COUNT函数确定列中值的数量,以计算分隔符的数量(在您的情况下为逗号)并添加1。 在您的示例中,您有2个逗号和三个要处理的值 - 这也是您必须执行的循环数。 在循环中使用FIELD函数来提取变换器循环定义中的值 - 使用@ITERATION(循环计数器)逐个提取值。 使用此解决方案,变压器将输出更多行,然后消耗,这将提供您的解决方案。

详细信息和示例请参阅here