[英]Dynamic row comparison in one table - DAX / M language / Power BI
Is this possible? 这可能吗?
I've got a table, with a column containing the version of product (for example: fast car ). 我有一个表格,其中包含产品版本的列(例如: fast car )。 Every version has a list of parts (for example: color ).
每个版本都有一个零件列表(例如: color )。 Every part has a number of values (for example: red ).
每个部分都有许多值 (例如: red )。
VERSION PART PART_VALUE VERSION1 PART1 PART_VALUE1 VERSION1 PART2 PART_VALUE2 VERSION1 PART3 PART_VALUE3 VERSION2 PART2 PART_VALUE2 VERSION2 PART3 PART_VALUE3 VERSION2 PART4 PART_VALUE4 VERSION3 PART1 PART_VALUE1 VERSION3 PART2 PART_VALUE2 VERSION3 PART3 PART_VALUE4
Now I want to select - in Fragmentator or in some other checkbox - Version1 and Version2 and the results should be: 现在,我想在“ Fragmentator”或其他复选框中选择“ Version1”和“ Version2” ,结果应为:
"ONLY DIFFENCES BETWEEN VERSION1 AND VERSION2"
VERSION1 PART1 PART_VALUE1 VERSION2 PART4 PART_VALUE4
or after selecting Version1 and Version3 the results should be: 或在选择Version1和Version3之后 ,结果应为:
"ONLY DIFFENCES BETWEEN VERSION1 AND VERSION3"
VERSION1 PART3 PART_VALUE3 VERSION3 PART3 PART_VALUE4
Here's an M query which should do what you want: 这是一个M查询,它应该执行您想要的操作:
(V1, V2) =>
let
Source = MyTable,
First = Table.SelectRows(Source, each ([VERSION] = V1)),
Second = Table.SelectRows(Source, each ([VERSION] = V2)),
#"First Unique" = Table.NestedJoin(First,{"PART", "PART_VALUE"},Second,{"PART", "PART_VALUE"},"Second",JoinKind.LeftAnti),
#"Second Unique" = Table.NestedJoin(Second,{"PART", "PART_VALUE"},First,{"PART", "PART_VALUE"},"First",JoinKind.LeftAnti),
Combine = Table.Combine({#"First Unique", #"Second Unique"}),
#"Removed Columns" = Table.RemoveColumns(Combine,{"Second", "First"})
in
#"Removed Columns"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.