例1 有Excel文件book1.xlsx中有下图所示数据: 现在需要把每一组姓名中的 ID 号合并为指定格式,然后将合并值放到 C 列。期望的结果如下: 编写SPL脚本: | A | 1 | =T("e:/work/book1.xlsx").derive(IDs) | 2 | =A1.group(Name).run(a=~.(ID).concat("|"),~.run(IDs=a)) | 3 | =T("e:/work/book2.xlsx",A1) |
A1 读出book1.xlsx数据并增加一列IDs A2 按Name分组后,循环各组,将各组的ID值用|连接拼成串赋给变量a,再循环组内各记录令IDs=a A3 把A1中的序表保存到文件book2.xlsx 例2有Excel文件book1.xlsx中有下图所示数据,Employee是员工名字,Shift是上下班标记,Route ID是员工坐的班车号。 现在要统计出员工每天上下班时同班车的人数。结果如下图绿色区所示: 编写SPL脚本: | A | 1 | =T("e:/work/book1.xlsx").derive(Employees) | 2 | =A1.group('Route ID').run(a=~.count(),~.run(Employees=a)) | 3 | =A1.group(Employee,Shift) | 4 | =A3.new(Employee,Shift,"{"/~.(Employees).concat(";")/"}":Clubbing) | 5 | =T("e:/work/book2.xlsx",A4) |
A1 读出book1.xlsx数据并增加一列Employees A2 按Route ID分组后,循环各组,计算各组记录数(即同车人数)赋给变量a,再循环组内各记录令Employees=a A3 再对A1按Employee和Shift分组 A4 用A3中的各组分别new出一条新记录,取出Employee、Shift字段,将组内各记录的Employees用分号连接成串,两边再加上大括号,命名为Clubbing字段。 A5 把A4中的序表保存到文件book2.xlsx
|