在Informatica中将多行分为列

发布于 2025-01-30 05:57:32 字数 371 浏览 3 评论 0 原文

我有一个源表,其值如图所示

”源表“

我希望输出

我尝试了很多事情,但无济于事。

无论如何,使用Infromatooma开发人员客户端是否可以这样做?

提前致谢

I have a source table that have values like shown

source table

i want the output to be like this

target table

i tried many things but to no avail.

is there anyway to do this using the infromatica developer client?

thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

萌逼全场 2025-02-06 05:57:32

我假设您需要使用第一个 c41 与第一个 c42 等加入 - 因为您没有提及如何剥夺哪个数值行应与绑定到 in

看来您需要为每个 field_name 生成序列,将数据流分为两个,基于 field_name ,然后使用生成的序列加入。

表达式应通过以下端口来生成序列:

(variable port) v_seq = IIF(prev_Field_Name = Field_Name, v_seq+1, 1)
(variable port) prev_Field_Name = Field_Name
(output port)   out_seq = v_seq

现在流如下:

Src--SQ--Exp_generate_seq--RTR--(C41)-\
                              \-(C42)--Jnr_by_seq

I assume you need to join first C41 with first C42, etc. - as you did not mention how to deremine which of the numerical rows should get tied to IN.

Looks like you need to generate sequence for each Field_Name, split the data flow into two, based on Field_Name, and join back using the generated sequence.

The Expression should generate a sequence by having following ports:

(variable port) v_seq = IIF(prev_Field_Name = Field_Name, v_seq+1, 1)
(variable port) prev_Field_Name = Field_Name
(output port)   out_seq = v_seq

Now the flow would be like this:

Src--SQ--Exp_generate_seq--RTR--(C41)-\
                              \-(C42)--Jnr_by_seq
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文