How to split one row in different rows in TALEND

user3592257 picture user3592257 · Jan 5, 2015 · Viewed 9.6k times · Source

I need help to migrate one row from old DB to multiple rows in my New DB.

I have a data like:

OID       CUSTOMER_NAME     DOB            ADDRESS
1          XYZ              03/04/1987    ABC

In my new DB i am storing data in KEY VALUE pair like:

OID      KEY            VALUE
1      CUSTOMER_NAME    XYZ
1      DOB             03/04/1987
1      ADDRESS        ABC

Someone please help me how to do this using TALEND tool.

Answer

garpitmzn picture garpitmzn · Jan 5, 2015

you can use tMap multiple output linked to same output as one possible solution here. But it is not dynamic. why can you split the single row into multiple rows in source select query itself?

if you want to use this tmap option see below

tOracleInput(anyotherinput)-->tMap-->toutput/tlogrow

Take this row as input to tmap component and in tmap create one output group say out_1. Now in this out_1 drag and link OID and CUSTOMER_NAME columns from input. Now create another output group out_02 in this tmap and when "add a output" dialog comes select "create join table from" and in the dropdown select out_1 group, so that our output rows from this out_02 group will also go to out_01 group. So our tmap will have only one output group out_01 containing rows from both out_01 and out_02. now in out_02 drag and link OID and DBO columns. similarly repeat it for out_03 and link OID and ADDRESS column..