2017-02-13 42 views
1

我有两个表合并,然后我扩大新列。问题是第一个表格可能会有新列,因为我们将新数据输入到新的月份/年份。结果不包括这些新月。电力查询 - 扩大新列

有没有办法在合并时扩展新列?

查询:

let 
    Source = #"320 Odemeler", 
    #"Merged Queries" = Table.NestedJoin(Source,{"HESAP NO"},#"320 Faturalar",{"HESAP NO"},"NewColumn",JoinKind.LeftOuter), 
    #"Expanded NewColumn" = Table.ExpandTableColumn(#"Merged Queries", "NewColumn", {"HESAP NO", "HESAP ADI", "Nisan - 2016", "Haziran - 2016", "Temmuz - 2016", "Ağustos - 2016", "Eylül - 2016", "Ekim - 2016", "Kasım - 2016", "Aralık - 2016", "Ocak - 2017", "Şubat - 2017", "Mart - 2017", "Mayıs - 2017"}, {"HESAP NO.1", "HESAP ADI.1", "Nisan - 2016", "Haziran - 2016", "Temmuz - 2016", "Ağustos - 2016", "Eylül - 2016", "Ekim - 2016", "Kasım - 2016", "Aralık - 2016", "Ocak - 2017", "Şubat - 2017", "Mart - 2017", "Mayıs - 2017"}) 
in 
    #"Expanded NewColumn" 

其他查询:

let 
    Source = #"Tum Hareketler", 
    #"Sorted Rows" = Table.Sort(Source,{{"DATE_", Order.Ascending}}), 
    #"Duplicated Column" = Table.DuplicateColumn(#"Sorted Rows", "DATE_", "DATE_ - Copy"), 
    #"Extracted Month Name" = Table.TransformColumns(#"Duplicated Column", {{"DATE_", each Date.MonthName(_, "tr-TR"), type text}}), 
    #"Extracted Year" = Table.TransformColumns(#"Extracted Month Name",{{"DATE_ - Copy", Date.Year}}), 
    #"Added Custom" = Table.AddColumn(#"Extracted Year", "Tarih", each [DATE_] & " - " & Number.ToText([#"DATE_ - Copy"], "G","")), 
    #"Grouped Rows" = Table.Group(#"Added Custom", {"HESAP NO", "HESAP ADI", "Tarih"}, {{"Sum Alacak", each List.Sum([ALACAK]), type number}}), 
    #"Pivoted Column" = Table.Pivot(#"Grouped Rows", List.Distinct(#"Grouped Rows"[Tarih]), "Tarih", "Sum Alacak", List.Sum) 
in 
    #"Pivoted Column" 
+0

也许我可以做一个列的新列表并设置“Table.ExpandTableColumn”这个清单? –

+0

我创建了一个名为“Tarih”的新列表,但我不知道替换“{”HESAP NO“,”HESAP ADI“,”Nisan - 2016“,”Haziran - 2016“,”Temmuz - 2016“ “Ağustos - 2016”,“Eylül - 2016”,“Ekim - 2016”,“Kasım - 2016”,“Aralık - 2016”,“Ocak - 2017”,“Şubat - 2017”,“Mart - 2017”,“Mayıs - 2017“}'列表... –

+0

'Source = Tarih'然后我应该写入'Table.ExpandTableColumn'? –

回答

0

首先我转换 “Tarih” 名单表,

然后设法写如下的查询:

let 
    Liste = Tarih, 
    TarihListe = Liste [Column1], 
    Source = #"320 Odemeler", 
    #"Merged Queries" = Table.NestedJoin(Source,{"HESAP NO"},#"320 Faturalar",{"HESAP NO"},"NewColumn",JoinKind.LeftOuter), 
    #"Expanded NewColumn" = Table.ExpandTableColumn(#"Merged Queries", "NewColumn", TarihListe , TarihListe) 
in 
    #"Expanded NewColumn" 

所以,每一个ti我由Pivot Column添加新的月份列,我不必编辑查询将其添加到查询...

+0

我认为你的查询逻辑有一些额外的复杂性。另外,如果您希望所有列都可以随时展开,则可以使用“Table.Join”而不是“Table.NestedJoin”。 – Eugene

+0

@Eugene感谢您的评论。什么样的复杂性?我们如何简化它?我没有使用它,Power Query将它插入为'NestedJoin' –

+0

@UlmutK当您使用UI合并表时,PowerQuery不会自动使用'Table.Join'。你必须自己写。为了帮助您简化查询,我需要知道这个任务:您有哪些表以及您想要什么结果。 – Eugene