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

Power Query: how can I make power query update a merge file?

我合并了两个文件。

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

但是当列名发生变化时,它不会在生成的合并文件中发生变化。

我想让我的 "merged query" 进化,以便它 "updates" 具有潜在的新输入。 例如,如果正在合并的文件之一有一个多列或一个新名称,我希望我的查询能够反映这一点。

如何在我的查询中更改它? 这可能吗?

下面是我要解决的问题的一个最小示例:

文件一:

  |---------------------|---------------------|  
  |       Name          |      Pro1           |      
  |---------------------|---------------------|
  |         A           |         56          |     
  |---------------------|---------------------|
  |         B           |         56          |     
  |---------------------|---------------------|

文件 2:

  |---------------------|---------------------|  
  |       Name          |       WEURK         |      
  |---------------------|---------------------|
  |         A           |       LALALA        |     
  |---------------------|---------------------|
  |         B           |       RTEWRFVE      |     
  |---------------------|---------------------|

合并结果:

  |---------------------|---------------------|---------------------|    
  |       Name          |      Pro1           |       WEURK         |      
  |---------------------|---------------------|---------------------|
  |         A           |         56          |       LALALA        |        
  |---------------------|---------------------|---------------------|
  |         B           |         56          |       RTEWRFVE      |      
  |---------------------|---------------------|---------------------|

但是在这里,我做了以下操作,例如:更改列名,但这对我的合并没有影响...我怎样才能合并"update"?

  |---------------------|---------------------|  
  |       Name          |    WALALLALALALA    |      
  |---------------------|---------------------|
  |         A           |         56          |     
  |---------------------|---------------------|
  |         B           |         56          |     
  |---------------------|---------------------|

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

这是最少的可能查询。

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 中没有重复的列名,并且文件 2.

但这对你来说将是一个起点。