5.2 计算交并集

SQL

SELECT Distinct CustomerID
FROM Orders2020
UNION
SELECT Distinct CustomerID
FROM Orders2021

SPL

A
1 =file(“Orders2020_Account.ctx”).open().cursor(CustomerID).group@s(CustomerID;)
2 =file(“Orders2021_Account.ctx”).open().cursor(CustomerID).group@s(CustomerID;)
3 =[A1,A2].mergex@u(CustomerID)

A1-A2 从按主键有序的组表文件中分别读出两个年份的数据,并聚合。注意:没有聚合表达式的时候,如果要聚合必须在参数末尾加上分号
A3 用 mergex 函数采用有序归并的方式合并两个游标,返回游标,后续根据需要从游标读数。@u 表示并集


SQL

SELECT Distinct CustomerID
FROM Orders2020
INTERSECT
SELECT Distinct CustomerID
FROM Orders2021

SPL

A
1 =file(“Orders2020_Account.ctx”).open().cursor(CustomerID).group@s(CustomerID;)
2 =file(“Orders2021_Account.ctx”).open().cursor(CustomerID).group@s(CustomerID;)
3 =[A1,A2].mergex@i(CustomerID)

SQL

SELECT DISTINCT CustomerID
FROM Orders2020
EXCEPT                        --MINUS
SELECT Distinct CustomerID
FROM Orders2021

SPL

A
1 =file(“Orders2020_Account.ctx”).open().cursor(CustomerID).group@s(CustomerID;)
2 =file(“Orders2021_Account.ctx”).open().cursor(CustomerID).group@s(CustomerID;)
3 =[A1,A2].mergex@d(CustomerID)

以下是广告时间

对润乾产品感兴趣的小伙伴,一定要知道软件还能这样卖哟性价比还不过瘾? 欢迎加入好多乾计划。
这里可以低价购买软件产品,让已经亲民的价格更加便宜!
这里可以销售产品获取佣金,赚满钱包成为土豪不再是梦!
这里还可以推荐分享抢红包,每次都是好几块钱的巨款哟!
来吧,现在就加入,拿起手机扫码,开始乾包之旅



嗯,还不太了解好多乾?
猛戳这里
玩转好多乾