cancel
Showing results forย 
Search instead forย 
Did you mean:ย 

Converting rows into column

kkishore
New Contributor III

I am trying below data converting rows into columns

input:
[
{
โ€œCARRIERCODEโ€: โ€œabcโ€,
โ€œSHIPCARRIERTRACKINGNUMโ€: โ€œ531โ€,
โ€œDATETIMEVALUEโ€: โ€œ2022-05-16 08:05:00โ€,
โ€œDATETIMETYPEโ€: โ€œACTUAL_DELIVERYโ€,
โ€œDATEVALUEโ€: โ€œ2022-05-16โ€
},
{
โ€œCARRIERCODEโ€: โ€œabcโ€,
โ€œSHIPCARRIERTRACKINGNUMโ€: โ€œ531โ€,
โ€œDATETIMEVALUEโ€: โ€œ2022-05-11 09:31:00โ€,
โ€œDATETIMETYPEโ€: โ€œACTUAL_PICKUPโ€,
โ€œDATEVALUEโ€: โ€œ2022-05-11โ€
},
{
โ€œCARRIERCODEโ€: โ€œabcโ€,
โ€œSHIPCARRIERTRACKINGNUMโ€: โ€œ531โ€,
โ€œDATETIMEVALUEโ€: โ€œ2022-05-11 12:00:00โ€,
โ€œDATETIMETYPEโ€: โ€œSHIPโ€,
โ€œDATEVALUEโ€: โ€œ2022-05-11โ€
},
{
โ€œCARRIERCODEโ€: โ€œabcโ€,
โ€œSHIPCARRIERTRACKINGNUMโ€: โ€œ531โ€,
โ€œDATETIMEVALUEโ€: โ€œ2022-05-11 09:49:00โ€,
โ€œDATETIMETYPEโ€: โ€œACTUAL_TENDERโ€,
โ€œDATEVALUEโ€: โ€œ2022-05-11โ€
},

expected output:

image

any leads here

1 ACCEPTED SOLUTION

bojanvelevski
Valued Contributor

Hi @kkishore,

Group the incoming data by CARRIERCODE & SHIPCARRIERTRACKINGNUM:

image

And add the following expression in a mapper after the group by snap:

$group.map(x=>{[x.DATETIMETYPE+"_DATETIMEVALUE"]:x.DATETIMEVALUE,[x.DATETIMETYPE+"_DATEVALUE"]:x.DATEVALUE}).reduce((acc,curr)=>acc.extend(curr),{}).extend($groupBy)

Hope this helps,
Regards

View solution in original post

3 REPLIES 3

bojanvelevski
Valued Contributor

Hi @kkishore,

Group the incoming data by CARRIERCODE & SHIPCARRIERTRACKINGNUM:

image

And add the following expression in a mapper after the group by snap:

$group.map(x=>{[x.DATETIMETYPE+"_DATETIMEVALUE"]:x.DATETIMEVALUE,[x.DATETIMETYPE+"_DATEVALUE"]:x.DATEVALUE}).reduce((acc,curr)=>acc.extend(curr),{}).extend($groupBy)

Hope this helps,
Regards

Thank you @bojanvelevski , perfect it is working as expected.

Thank you @kkishore, can you please mark @bojanvelevskiโ€™s suggestion as a Solution so that anybody looking at this thread in the future can refer to the solution directly?