WPS利用SQL做拆分到行

如上图数据源,需要将统计每个姓名对应的总分,借助DuckDB的拆分到行的功能,很容易先拆分再聚合统计出结果,代码效果如下:

JSA里也可以调用duckdb来处理,代码如下:

function split2rows(){

let connstr="ODBC;Driver={DuckDB Driver}"

let sql=`select name,sum(分数) as tot from (select UNNEST(string_split(学生姓名,',')) as name, 分数 from read_xlsx('z:/练习1.xlsx',range='A1:C7')) a group by 1`

let d=ActiveSheet.QueryTables.Add(connstr,ActiveSheet.Range("a1"),sql)

d.Refresh()

}

北京
浏览 377
收藏
5
分享
5 +1
2
+1
全部评论 2
 
这个驱动文件的下载地址能不能提供一下
· 广东省
回复
https://bbs.wps.cn/topic/59012,这个里面有介绍
· 北京
回复