3.19 同序集合按原序归并计算并集
在结构相同的两个表中,根据字段值将其中的记录有序归并,并去掉重复记录。
某商家根据销售渠道不同,销售记录分别存储在线上和实体店两个表。有时线上线下同时搞活动,部分销售记录被同时存储在两个表中。求商家实际的总销售额。销售表结构相同,如下:
OrderID | Customer | SellerId | OrderDate | Amount |
---|---|---|---|---|
10400 | EASTC | 1 | 2014/01/01 | 3063.0 |
10401 | HANAR | 1 | 2014/01/01 | 3868.6 |
10402 | ERNSH | 8 | 2014/01/02 | 2713.5 |
10403 | ERNSH | 4 | 2014/01/03 | 1005.9 |
10404 | MAGAA | 2 | 2014/01/03 | 1675.0 |
… | … | … | … | … |
脚本:
A | |
---|---|
1 | =T(“Online.xlsx”) |
2 | =T(“Store.xlsx”) |
3 | =A1.sort(OrderID) |
4 | =A2.sort(OrderID) |
5 | =[A3,A4].merge@u(OrderID) |
6 | =A5.sum(Amount) |
A1 读取线上销售表
A2 读取实体店销售表
A3 线上销售表按订单 ID 排序
A4 实体店销售表按订单 ID 排序
A5 使用 merge 函数的 @u 选项,两表按订单 ID 有序归并,删除重复的记录
A6 汇总销售额
运行结果:
Value |
---|
678756.41 |