3.10 从属和包含:成员从属判断
对于两个集合 A 和 B,若集合 A 的任何一个成员都是集合 B 的成员,则称 B 包含 A。从属关系是元素与集合之间的关系,当集合 A 中存在成员 x 时,我们称 x 从属于 A。比如集合 [1,2,3] 包含集合[1,2],成员 1 从属于集合[1,2,3]。
在员工表中,统计 California, New York, Texas, Washington 各州的平均工资。部分数据如下:
ID | NAME | SURNAME | STATE | DEPT | SALARY |
---|---|---|---|---|---|
1 | Rebecca | Moore | California | R&D | 7000 |
2 | Ashley | Wilson | New York | Finance | 11000 |
3 | Rachel | Johnson | New Mexico | Sales | 9000 |
4 | Emily | Smith | Texas | HR | 7000 |
5 | Ashley | Smith | Texas | R&D | 16000 |
… | … | … | … | … | … |
SPL 中可以使用函数 A.contain(x) 判断 x 是否从属于集合 A。
脚本:
A | |
---|---|
1 | =T(“Employee.xlsx”) |
2 | [California,New York,Texas,Washington] |
3 | =A1.select(A2.contain(STATE)) |
4 | =A3.groups(DEPT; avg(SALARY):SALARY) |
A1:从文件中导入员工表。
A2:定义几个州的常量集合。
A3:从员工表中选出州名从属于 A2 集合的记录。
A4:对 A3 选出的记录进行分组汇总每个部门的平均工资。