Excel Power Query-排序/筛选表

时间:2018-08-08 17:33:36

标签: sql excel sorting filtering powerquery

我正在使用Power Query将SQL数据库中的数据作为简单表提取到Excel中。

此操作的目的是在手动列(不是SQL数据库的一部分)中为拉入表中的各种记录记录注释,然后逐周刷新表以获取每个记录的更新数据,但保留前几周的评论。

我能够成功编写查询并检索数据,但是每当我数据进行排序然后刷新查询时,我手动添加的注释都将对齐。

我已经在“外部数据属性”窗口中选中了“保留列排序/过滤器/布局”选项以进行查询,并且过滤似乎可以正常工作(如果我仅过滤并添加手动注释,刷新数据集不会更改注释的位置),但是排序无效。

运行SQL查询时,记录按键列排序(其中每个记录的值都是唯一的),但是我无法在Power Query编辑器中找到一种方法来强制刷新的数据与该字段对齐

每个楔形函数响应的示例:

步骤1.执行SQL查询 SQL Data Query

步骤2。添加手动注释 Manual Comment

步骤3。排序方式与原始查询不同(与ORDER BY不同) Sort Differently

第4步。刷新原始SQL查询 SQL Query Refresh

在示例中可以看到,刷新SQL查询后,“测试”注释将与其他PurchaseOrderLineID对齐。

我试图创建一个“ From Table”查询(从我的SQL输出表中),并将其与原始SQL查询合并,如下所示,但是我仍然遇到相同的问题。 Merge Query

1 个答案:

答案 0 :(得分:1)

如果所有要导入的行都具有唯一标识它们的方式(我认为是这种情况,这些行是从SQL表中出来的),则可以使用它来使注释保持一致。转到Excel中的输出表,使用PQ菜单上的“从表”,并将其设为仅连接查询。

然后转到从SQL数据库中提取的原始查询,并针对刚刚加载的表添加一个“合并查询”步骤(该表将带有您的注释列)。根据唯一标识行的内容合并它们,并仅扩展合并中的注释列。

通过这种方式,只要刷新表格,表格就会匹配并保留所有现有注释,然后在Excel中更新输出表格。