篮球老昨晚发了一个案例给我,说把源表连续转置两次可以将以前我们做过的凭证级别串联的效率大幅提升:
假设数据源一万行左右如下:
最终效果:
因为我是复制的数据源记录扩展为万行,所以结果看上去层级别很多重复,不影响测试。
比较以下两种方式:
let
源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
生成层级 = Table.AddColumn(源,"层",(x)=>Text.Combine(Table.SelectRows(源,(y)=>Text.StartsWith(x[编码],y[编码]))[名称],","))
in
生成层级
let
源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
转置两次= Table.Transpose(Table.Transpose(源)),
输出= Table.AddColumn(转置两次,"层",(x)=>Text.Combine(Table.SelectRows(转置两次,(y)=>Text.StartsWith(x[Column1],y[Column1]))[Column2],","))
in
输出
大家还可以对比以前的一个类似优化案例:https://pbihub.cn/blog/46
道高一尺 魔高一丈
https://pbihub.cn/users/44