获取逗号分隔值到informatica中的多行?

Posted

技术标签:

【中文标题】获取逗号分隔值到informatica中的多行?【英文标题】:Get comma separated value to multiple rows in informatica? 【发布时间】:2022-01-04 08:46:05 【问题描述】:

我有 2 列

SID  CID
1    101,102
2    201,2021,231

在 TGT 中

SID CID
1   101
1   102
2   201
2   2021
2   231

【问题讨论】:

【参考方案1】:

您需要使用规范化器。 先在 SQ 之后,使用表达式转换来拆分 CID 列。

o_cid1= substr(cid,1,3) --if length is variable you need to use instr
o_cid2= substr(cid,instr(cid,',',1)+1, 3) -- if length is variable you need to use instr
...

然后使用归一化器。属性应该是

sid =0的出现次数 cid=3的出现次数

您将看到 4 个输入端口(3 个用于 cid1、2、3 和 1 个用于 sid)和两个与您的需求相关的输出端口(1cid、1sid)。

连接sid、o_cid1、o_cid2...到对应的端口。

最后将输出端口 cid,sid 连接到目标。

【讨论】:

以上是关于获取逗号分隔值到informatica中的多行?的主要内容,如果未能解决你的问题,请参考以下文章

每个逗号分隔的 CSV 值到 PhpMyadmin 中的新行

将多行转换为雪花中的一个逗号分隔值

将多行中的文本合并为一行(作为逗号分隔的字符串)

pyspark 从逗号分隔值列表中创建多行

如何根据一个字段是不是包含oracle sql中的逗号分隔字符串将单行拆分为多行?

多行到一个唯一的逗号分隔值[重复]