Power Query 将子级数据复制到层次结构中的父级

问题描述 投票:0回答:1

我有一个具有父/子层次结构的表,其中列 (BinNum) 中子级的值需要传播或复制到父级。有没有办法在 Power Query 或 DAX 中执行此操作?

输入和结果表:

级别 顺序 BinNum 级别 顺序 BinNum
A10 1 0 A10 1 50
A10 2 0 A10 2 243
A10 3 0 A10 3 100
A10 4 0 A10 4 67
A10 5 0 A10 5 98
A10-05 1 0 A10-05 1 50
A10-05 2 0 A10-05 2 243
A10-05 3 0 A10-05 3 100
A10-05 4 0 A10-05 4 67
A10-05 5 0 A10-05 5 98
A10-05-01 1 50 A10-05-01 1 50
A10-05-01 2 243 A10-05-01 2 243
A10-05-01 3 100 A10-05-01 3 100
A10-05-01 4 67 A10-05-01 4 67
A10-05-01 5 98 A10-05-01 5 98
A10-06 1 0 A10-06 1 50
A10-06 2 0 A10-06 2 243
A10-06 3 0 A10-06 3 100
A10-06 4 0 A10-06 4 67
A10-06 5 0 A10-06 5 98
A10-06-01 1 50 A10-06-01 1 50
A10-06-01 2 243 A10-06-01 2 243
A10-06-01 3 100 A10-06-01 3 100
A10-06-01 4 67 A10-06-01 4 67
A10-06-01 5 98 A10-06-01 5 98

Input Table and Result Table

excel dax powerquery powerpivot
1个回答
0
投票

你可以试试这个,这是一个简单的单步合并

let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Added Index" = Table.AddIndexColumn(Source, "Index", 0, 1, Int64.Type),
#"Duplicated Column" = Table.DuplicateColumn(#"Added Index", "vel", "vel - Copy"),
#"Split Column by Delimiter" = Table.SplitColumn(#"Duplicated Column", "vel - Copy", Splitter.SplitTextByEachDelimiter({"-"}, QuoteStyle.Csv, false), {"vel - Copy.1", "vel - Copy.2"}),
#"Filtered Rows" = Table.SelectRows(#"Split Column by Delimiter", each ([BinNum] <> 0)),
#"Removed Duplicates" = Table.Distinct(#"Filtered Rows", {"Sequence", "vel - Copy.1"}),

#"Removed Columns" = Table.RemoveColumns(#"Split Column by Delimiter",{"BinNum", "vel - Copy.2"}),
#"Merged Queries" = Table.NestedJoin(#"Removed Columns", {"vel - Copy.1", "Sequence"}, #"Removed Duplicates", {"vel - Copy.1", "Sequence"}, "Table1", JoinKind.LeftOuter),
#"Expanded Table1" = Table.ExpandTableColumn(#"Merged Queries", "Table1", {"BinNum"}, {"BinNum"}),
#"Sorted Rows" = Table.Sort(#"Expanded Table1",{{"Index", Order.Ascending}}),
#"Removed Columns1" = Table.RemoveColumns(#"Sorted Rows",{"vel - Copy.1", "Index"})
in #"Removed Columns1"
© www.soinside.com 2019 - 2024. All rights reserved.