如何从Power Query中的列中查找最新日期-MAX()

Mik*_*ike 3 m powerquery powerbi

这用于功率查询:

我正在处理一个报告,该报告将汇总来自不同日期的信息,并且我需要一个列来生成列表中的最新日期,并在单独的列中生成最新日期的前一个日期:

整个列的“最新日期”必须相同(与“上一个日期”列相同)

Table Name : Skipped_Issue

Worker  |Case   |Report_Date    |MOST_CURRENT_DATE  |PREVIOUS_DATE
Tran    |3000   |1/2018     
Dhni    |52451  |4/2018     
Dhtuni  |39656  |2/2018 
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

Ale*_*son 5

对于最近的日期,您可以使用以下公式创建一个自定义列:

= Date.From(List.Max(NameOfPreviousStep[Report_Date]))
Run Code Online (Sandbox Code Playgroud)

其中NameOfPreviousStep引用了查询中的上一步(例如#"Changed Type"Source)。

要获取倒数第二个日期,您可以创建一个自定义列,该列在删除 MOST_CURRENT_DATE

= Date.From(
      List.Max(
          List.RemoveItems(#"Added Custom"[Report_Date],
                           #"Added Custom"[MOST_CURRENT_DATE])))
Run Code Online (Sandbox Code Playgroud)

这是示例数据的整个查询:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCilKzFPSUTI2MDAAUob6hvpGBoYWSrE60UouGXmZQDFTIxNTQyBtgipXUgqWNbY0MzUD0kZw2VgA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Worker = _t, Case = _t, Report_Date = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Worker", type text}, {"Case", Int64.Type}, {"Report_Date", type date}}),
    #"Added Custom" = Table.AddColumn(#"Changed Type", "MOST_CURRENT_DATE", each Date.From(List.Max(Source[Report_Date])), type date),
    #"Added Custom1" = Table.AddColumn(#"Added Custom", "PREVIOUS_DATE", each Date.From(List.Max(List.RemoveItems(#"Added Custom"[Report_Date], #"Added Custom"[MOST_CURRENT_DATE]))), type date)
in
    #"Added Custom1"
Run Code Online (Sandbox Code Playgroud)