关联多行数据

举例

有 Excel 文件 Book1.xlsx,部分数据如下所示:

aid bid cid
XD19010576 SCD181202515 XO18120141
XD19010577 SCD181202515 XO18120141
XD19010578 SCD181202515 XO18120141
XD19010579 SCD181202515 XO18120141
XD19010580 SCD181202515 XO18120141
XD19010581 SCD181202515 XO18120141
XD19020009 SCD181202515 XO18120141
XD19020010 SCD181202515 XO18120141

有 Excel 文件 Book2.xlsx,数据如下所示:

bid cid
SCD181202515 XO18120141
SCD181202514 XO18120142
SCD181202612 XO18120253
SCD181202619 XO18120254
SCD181202614 XO18120255

Book1的 bid、cid 与 Book2 的 bid、cid 对应关联,求每组下 aid,部分结果如下:

SCD181202515 XO18120141 XD19010576 XD19010577
SCD181202514 XO18120142 XD19020014 XD19020016
SCD181202612 XO18120253 XD19030468 XD19030478
SCD181202619 XO18120254 XD19020153 XD19020156
SCD181202614 XO18120255 XD19030083 XD19030085

编写 SPL 脚本:


A
1 =file("Book1.xlsx").xlsimport@t()
2 =file("Book2.xlsx").xlsimport@t()
3 =A1.group(bid,cid;~.(aid):aid)
4 =A3.align(A2:[bid,cid],[bid,cid])
5 =A4.(bid|cid|aid)
6 =file("result.xlsx").xlsexport@w(A5)

A1   读取 excel 文件内容

A2   读取 excel 文件内容

A3  Book1的数据按 bid、cid 分组,每组下有多个 aid

A4  Book1的 bid、cid 按 Book2 的对应关联

A5  依次合并 bid、cid、aid 列

A6  结果导出至 result.xlsx