Power Query: return self (this) 查询名称
Power Query: return self (this) query name
我正在寻找一种方法让查询在查询本身中引用它自己的名称。据我所知,没有这方面的原生功能,所以你必须有点棘手。想我会分享这个解决方案,我发现 here 由 Bagration.555 经过大量挖掘后发现。
这里的关键是最后一步是使用此结构的所有查询的单个值(在本例中为 0,由 res
步骤定义)。 结果是self_name
步returns查询的名字
__Id__
可以是任意字段名
555
可以是任何 static 值
- res 可以是任何 static 值
let
queries = Record.ToTable( #sections[Section1] ),
select_marked = Table.SelectRows( queries, each Text.StartsWith( [Name], "YOUR_PREFIX")),
choose_self = Table.AddColumn( select_marked, "__Id__", each try if Record.HasFields( Value.Metadata([Value]), "__Id__") then null else [Name] otherwise [Name] ),
self_name = List.RemoveNulls(choose_self[__Id__]){0},
res = 0 meta [__Id__ = 555]
in
res
我正在寻找一种方法让查询在查询本身中引用它自己的名称。据我所知,没有这方面的原生功能,所以你必须有点棘手。想我会分享这个解决方案,我发现 here 由 Bagration.555 经过大量挖掘后发现。
这里的关键是最后一步是使用此结构的所有查询的单个值(在本例中为 0,由 res
步骤定义)。 结果是self_name
步returns查询的名字
__Id__
可以是任意字段名555
可以是任何 static 值- res 可以是任何 static 值
let
queries = Record.ToTable( #sections[Section1] ),
select_marked = Table.SelectRows( queries, each Text.StartsWith( [Name], "YOUR_PREFIX")),
choose_self = Table.AddColumn( select_marked, "__Id__", each try if Record.HasFields( Value.Metadata([Value]), "__Id__") then null else [Name] otherwise [Name] ),
self_name = List.RemoveNulls(choose_self[__Id__]){0},
res = 0 meta [__Id__ = 555]
in
res