无论列名如何,Power 查询都将单列附加到多个表

Power query append multiple tables with single column regardless column names

我在 M 中有以下查询:

= Table.Combine({
Table.Distinct(Table.SelectColumns(Tab1,{"item"})),
Table.Distinct(Table.SelectColumns(Tab2,{"Column1"}))
})

是否可以在不事先更改列名的情况下使其正常工作?

我想得到类似于 SQL 语法的东西:

select item    from Tab1 union all
select Column1 from Tab2

如果您使用 M(就像在您的示例或追加查询选项中一样),列名必须相同,否则将无法工作。

但它在 DAX 中使用命令

=UNION(Table1; Table2)

https://docs.microsoft.com/en-us/dax/union-function-dax

在 Power Query M 中不可能。Table.Combine 与匹配的列建立并集。如果你想让所有的都在同一个步骤中,你可以添加更改名称步骤,而不是像你在 Table.SelectColumns 中所做的那样添加 tap2。 这种匹配名称的比较是以正确的方式合并。

如果你想要的话,希望你能在同一个步骤中管理。

如果您只需要每个 table 中的一列,那么您可以使用此代码:

= Table.FromList(List.Distinct(Tab1[item])
               & List.Distinct(Tab2[Column1]))