7.26 OuterApply 运算

 

对序表和序列值进行 Outer Apply 运算生成新序表。
根据发帖记录表,统计每位作者最常用的标签。

ID TITLE Author Label
1 Easy analysis of Excel Ashley Excel,ETL,Import,Export
2 Early commute: Easy to pivot excel Rachel Excel,Pivot,Python
3 Initial experience of SPL Rebecca
4 Talking about set and reference Emily Set,Reference,Dispersed,SQL
5 Early commute: Better weapon than Python Emily Python,Contrast,Install

使用 A.news() 函数的 @1 选项进行 Outer Apply 运算。

脚本:

A
1 =connect(“db”)
2 =A1.query@x(“select * from PostRecord”)
3 =A2.news@1(A2.Label.split@c(); ID,Title,Author,~:Label)
4 =A3.groups(Author,Label;count(~):Count)
5 =A4.group(Author).conj(~.maxp@a(Count))

A1 连接数据库
A2 查询发帖记录表
A3 使用 A.news 函数的 @1 选项对帖子和拆分后的标签序列进行 Outer Apply 运算,当标签不存在时仍保留发帖记录
A4 分组汇总每位作者各标签的数量
A5 按作者分组选出所有数量最多的标签

运行结果:

Author Label Count
Rebecca (null) 1
Ashley Excel 3
Ashley SPL 3
Rachel Python 4