集合相等与从属判断

举例

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

code order
A 1
A 2
A 3
A 4
B 1
B 2
B 4
B 3
C 4
C 2
C 3
C 1

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

order
1
2
3
4

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

order
1
2

1:集合相等

Book1中找出同code下,order列与standard1order列完全相同的所有数据

编写SPL脚本:


A
1 =file("Book1.xlsx").xlsimport@t()
2 =file("standard1.xlsx").xlsimport@t()
3 =A2.(order)
4 =A1.group(code).select(~.(order)==A3).conj()

A1   读取Excel数据

A2  读取Excel数据

A3  standard1中的order数据

A4   Book1的数据按code分组,找出每组内order列等于A3的数据,结果如下:

code order
A 1
A 2
A 3
A 4

2:集合从属

Book1中找出同code下,order列中包含standard2order列的所有数据

编写SPL脚本:


A
1 =file("Book1.xlsx").xlsimport@t()
2 =file("standard2.xlsx").xlsimport@t()
3 =A2.(order)
4 =A1.group(code).select(~.(order).pos@c(A3)).conj()

A1   读取Excel数据

A2  读取Excel数据

A3  standard2中的order数据

A4  Book1的数据按code分组,找出每组order列包含了A3的所有数据,结果如下:

code order
A 1
A 2
A 3
A 4
B 1
B 2
B 4
B 3