我想知道如何通过在PowerQuery中应用条件来提取某些数据。如果过去5天内有相同名称,则条件是提取当前日期数据(6/4)。原始数据如下。
因此它将返回以下内容:
6/4/2020 - Apple
6/4/2020 - Bear
6/3/2020 - Apple
6/2/2020 - Apple
6/2/2020 - Bear
5/31/2020 - Bear
这可能吗?
答案 0 :(得分:1)
如果您通过定义来定义当天
MaxDate = List.Max(#"Previous Step"[Date])
然后您可以通过过滤找到当天的姓名
MaxDateNames = Table.SelectRows(#"Previous Step", each [Date] = MaxDate)[Name]
您有足够的能力来编写组合条件:
FilteredTable = Table.SelectRows(#"Previous Step",
each [Date] > Date.AddDays(MaxDate, -5) and List.Contains(MaxDateNames, [Name]))
整个查询如下:
let
Source = <Your Data Source>,
#"Previous Step" = <Steps applied to Source>,
MaxDate = List.Max(#"Previous Step"[Date]),
MaxDateNames = Table.SelectRows(#"Previous Step", each [Date] = MaxDate)[Name],
FilteredTable = Table.SelectRows(#"Previous Step", each [Date] > Date.AddDays(MaxDate, -5) and List.Contains(MaxDateNames, [Name]))
in
FilteredTable