次序无关的集合相等与从属判断
举例
例1:集合相等
有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文件standard2.xlsx,数据如下所示:
order |
1 |
2 |
找出Book1中order的值也是standard2中order值的所有数据
编写SPL脚本:
A |
|
1 |
=file("Book1.xlsx").xlsimport@t() |
2 |
=file("standard2.xlsx").xlsimport@t() |
3 |
=A2.(order) |
4 |
=A1.select(A3.pos(order)) |
A1 读取Excel数据
A2 读取Excel数据
A3 standard2中的order数据
A4 pos函数判断Book1中order是否属于A3,根据判断的结果过滤数据,结果如下:
code |
order |
A |
1 |
A |
2 |
B |
1 |
B |
2 |
C |
2 |
C |
1 |
例2:集合从属
有Excel文件Book1.xlsx,数据如下所示:
code |
order |
A |
1 |
A |
3 |
A |
5 |
A |
7 |
B |
2 |
B |
4 |
B |
6 |
B |
8 |
C |
1 |
C |
2 |
C |
3 |
C |
4 |
有Excel文件standard2.xlsx,数据如下所示:
order |
1 |
2 |
找出Book1中,相同code下,order包含了standard2中order值的所有code的数据
编写SPL脚本:
A |
|
1 |
=file("Book1.xlsx").xlsimport@t() |
2 |
=file("standard2.xlsx").xlsimport@t() |
3 |
=A2.(order) |
4 |
=A1.group(code).select(A3^~.(order)==A3).conj() |
A1 读取Excel数据
A2 读取Excel数据
A3 standard2中的order数据
A4 按code分组,找出组内的order包含了standard2中order值的那些组,合并,结果如下:
code |
order |
C |
1 |
C |
2 |
C |
3 |
C |
4 |
英文已更新