Merge Power Query:如何使Power Query更新合并文件?

Merge Power Query:如何使Power Query更新合并文件?,merge,powerbi,refresh,updates,powerquery,Merge,Powerbi,Refresh,Updates,Powerquery,我合并了两个文件 我想定期更新这些文件,有时可以添加一列或更改列名 但是,当列名更改时,它不会在生成的合并文件中更改 我想让我的“合并查询”不断发展,这样它就可以用潜在的新输入进行“更新”。 例如,如果正在合并的文件中有一个有一个列或一个新名称,我希望我的查询反映出这一点 如何在查询中更改此选项? 这可能吗 下面是我试图解决的问题的一个简单示例: 文件一: |---------------------|---------------------| | Name

我合并了两个文件

我想定期更新这些文件,有时可以添加一列或更改列名

但是,当列名更改时,它不会在生成的合并文件中更改

我想让我的“合并查询”不断发展,这样它就可以用潜在的新输入进行“更新”。 例如,如果正在合并的文件中有一个有一个列或一个新名称,我希望我的查询反映出这一点

如何在查询中更改此选项? 这可能吗

下面是我试图解决的问题的一个简单示例:

文件一:

  |---------------------|---------------------|  
  |       Name          |      Pro1           |      
  |---------------------|---------------------|
  |         A           |         56          |     
  |---------------------|---------------------|
  |         B           |         56          |     
  |---------------------|---------------------|
文件2:

  |---------------------|---------------------|  
  |       Name          |       WEURK         |      
  |---------------------|---------------------|
  |         A           |       LALALA        |     
  |---------------------|---------------------|
  |         B           |       RTEWRFVE      |     
  |---------------------|---------------------|
合并结果:

  |---------------------|---------------------|---------------------|    
  |       Name          |      Pro1           |       WEURK         |      
  |---------------------|---------------------|---------------------|
  |         A           |         56          |       LALALA        |        
  |---------------------|---------------------|---------------------|
  |         B           |         56          |       RTEWRFVE      |      
  |---------------------|---------------------|---------------------|
但在这里,我做了以下的例子:更改一个列名,但这对我的合并没有影响…我如何才能使我的合并“更新”


您可以使用
Table.ColumnNames
获取可能更改的表列名列表

这里是一个最小可能的查询

let
    // Column names in File2 except for "Name" column.
    #"File2 Columns" =
        List.RemoveItems(Table.ColumnNames(File2), {"Name"}),

    // Merge File2 into a nested table column named "__File2".
    // You may need to replace JoinKind to another one depending on your data.
    #"Merged Queries" =
        Table.NestedJoin(File1, {"Name"}, File2, {"Name"}, "__File2", JoinKind.FullOuter),

    // Expand all the columns except for "Name" in the nested "__File2" table.
    #"Expanded File2" =
        Table.ExpandTableColumn(#"Merged Queries", "__File2", #"File2 Columns")
in
    #"Expanded File2"
此查询过于简化,无法实际应用,因为它将假定合并键列“Name”不会更改,并且File1和File2中没有重复的列名


但这将是您的起点。

嗨,谢谢!从你的回答中,我推断我想做的事在电力行业是不可能的。我理解,一些潜在的变化可能会在查询中以“解释”或“考虑”的方式出现,并被“警告”。但我的愿望是动态地这样做。在我的情况下,我无法知道会发生什么。查询只需使用一个给定的引用列来合并这两个字段,并将获取“所有其余内容”,无论这意味着获取一个新列还是一个名称已更改的列。我知道这是不可能的,但我只是想确定我的解释是有道理的。。
let
    // Column names in File2 except for "Name" column.
    #"File2 Columns" =
        List.RemoveItems(Table.ColumnNames(File2), {"Name"}),

    // Merge File2 into a nested table column named "__File2".
    // You may need to replace JoinKind to another one depending on your data.
    #"Merged Queries" =
        Table.NestedJoin(File1, {"Name"}, File2, {"Name"}, "__File2", JoinKind.FullOuter),

    // Expand all the columns except for "Name" in the nested "__File2" table.
    #"Expanded File2" =
        Table.ExpandTableColumn(#"Merged Queries", "__File2", #"File2 Columns")
in
    #"Expanded File2"