我有五个查询共享一些步骤。但为了简单起见,我们只考虑两个查询。
正如您在下面看到的,两个查询
Q1
和 Q2
共享前两个步骤和最后一步。
我的问题:是否可以在两个单独的查询中引用前两个步骤和最后一步,以便我可以在
Q1
和 Q2
中调用它们?因为现在我有一个问题。例如,如果我需要修改一个公共步骤或添加/删除一个步骤,我需要对 Q1
和 Q2
执行此操作。
Q1
let
Source = Csv.Document(File.Contents("C:\Users\VERBOSE\Desktop\file.csv"),[Delimiter=",", Columns=3, Encoding=1252, QuoteStyle=QuoteStyle.None]),
#"En-têtes promus" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
#"Personnalisée ajoutée" = Table.AddColumn(#"En-têtes promus", "new_col", each "###"),
#"Lignes filtrées" = Table.SelectRows(#"Personnalisée ajoutée", each ([col3] = "1"))
in
#"Lignes filtrées"
Q2
let
Source = Csv.Document(File.Contents("C:\Users\VERBOSE\Desktop\file.csv"),[Delimiter=",", Columns=3, Encoding=1252, QuoteStyle=QuoteStyle.None]),
#"En-têtes promus" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
#"Personnalisée ajoutée" = Table.AddColumn(#"En-têtes promus", "new_col", each "XYZ"),
#"Lignes filtrées" = Table.SelectRows(#"Personnalisée ajoutée", each ([col3] = "1"))
in
#"Lignes filtrées"
我的示例中使用的 csv 文件是这个:
col1,col2,col3
A,13/01/2023,1
B,14/01/2023,2
C,15/01/2023,3
您可以通过两种方式实现这一目标。您可以有基本查询,因此前两个步骤位于基本查询中,然后右键单击该查询并为您的两个输出查询引用该查询。确保在基本查询上未选中启用加载。对于最后一步,您可以将公共逻辑抽象为函数,并在两个输出查询中调用该函数。