让我的头被这个难住了。甚至不确定它是否可能。
我有 2 个日期列:“Date_of_Call”和“Error_Open_Time”
我想过滤此报告以仅显示 Error_Open_Time 位于 Date_of_Call 时间的 24 小时窗口内的记录。
例子:
如果 Error_Open_Time = '11/6/2016 1:17:00 PM' 和 Date_of_Call = '11/6/2016 12:00:00 AM',则此记录应显示在过滤器中,因为 Error_Open_Time 落在 24 小时窗口内.
如果 Error_Open_Time = '12/11/2016 12:35:00 AM' 和 Date_of_Call = '12/10/2016 12:00:00 AM',则此记录不应出现在过滤器中,因为 Error_Open_Time 不属于24 小时窗口。
此外,如果 Error_Open_Time 日期早于 Date_of_Call 日期,则应将其过滤掉,因为它不是必需的。
我希望这是有道理的。感谢你的帮助!
最佳答案
您可以在 Power Query 中将日期相减,这将为您提供持续时间。如果 Error_Open_Time
和 Date_of_Call
列是 Date
或 DateTime
类型,那么这应该可以解决问题:
[Error_Open_Time] - [Date_of_Call]
添加自定义列-1.00:00:00
和“小于或等于”1.00:00:00
(1天之间)。 步骤应如下所示:
#"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each [Error_Open_Time] - [Date_of_Call]),
#"Filtered Rows" = Table.SelectRows(#"Added Custom", each [Custom] >= #duration(-1, 0, 0, 0) and [Custom] <= #duration(1, 0, 0, 0)),
#"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"Custom"})
关于sql - Excel/DAX/Power Query : How to filter table to find records that fill within a 24 hour window from two dates,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40494518/