Sql Excel/DAX/Power Query:如何筛选表格以查找从两个日期起24小时内填写的记录
我的头被这个弄伤了。甚至不确定这是否可能 我有两个日期栏:“通话日期”和“错误打开时间” 我想筛选此报告,以仅显示错误打开时间在从调用时间的日期起24小时内的记录 例如: 如果错误打开时间='11/6/2016 1:17:00 PM'和调用日期='11/6/2016 12:00:00 AM',则此记录应显示在筛选器中,因为错误打开时间在24小时窗口内 如果错误打开时间='12/11/2016 12:35:00 AM'和调用日期='12/10/2016 12:00:00 AM',则此记录不应显示在筛选器中,因为错误打开时间不在24小时窗口内 此外,如果错误\u打开\u时间日期早于\u调用日期的日期,则应将其过滤掉,因为它不是必需的Sql Excel/DAX/Power Query:如何筛选表格以查找从两个日期起24小时内填写的记录,sql,excel,date,dax,powerquery,Sql,Excel,Date,Dax,Powerquery,我的头被这个弄伤了。甚至不确定这是否可能 我有两个日期栏:“通话日期”和“错误打开时间” 我想筛选此报告,以仅显示错误打开时间在从调用时间的日期起24小时内的记录 例如: 如果错误打开时间='11/6/2016 1:17:00 PM'和调用日期='11/6/2016 12:00:00 AM',则此记录应显示在筛选器中,因为错误打开时间在24小时窗口内 如果错误打开时间='12/11/2016 12:35:00 AM'和调用日期='12/10/2016 12:00:00 AM',则此记录不应显示在
我希望这是有道理的。谢谢你的帮助 您可以在Power Query中同时减去日期,这将给您一个持续时间。如果调用列的
Error\u Open\u Time
和Date\u是Date
或DateTime
类型,则应执行以下操作:
添加一个自定义列,其公式为[Error\u Open\u Time]-[Date\u of\u Call]
筛选24小时周期之间的自定义列。您可以执行“大于或等于”-1.00:00:00
和“小于或等于”1.00:00:00
(介于1天之间)
删除自定义列
步骤应如下所示:
#“Added Custom”=Table.AddColumn(#“Changed Type”、“Custom”,每个[Error_Open_Time]-[Date_of_Call]),
#“筛选行”=表格。选择行(#“添加自定义”,每个[自定义]>=#持续时间(-1,0,0,0)和[自定义]在表格中创建一个计算列,以确定要筛选的记录
=
IF (
'Table'[Date_of_Call]
= DATE ( YEAR ( 'Table'[Error_Open_Time] ), MONTH ( 'Table'[Error_Open_Time] ), DAY ( 'Table'[Error_Open_Time] ) ),
1,
0
)
然后在报告中添加一个过滤器,该过滤器仅使用计算列中等于1的值
如果这有帮助,请告诉我。对于PowerQuery,我将在一行中完成,无需添加列:
FilterRecords = Table.SelectRows(Source, each ([Error_Open_Time] > [Date_of_Call]) and ([Date_of_Call] + #duration(1,0,0,0) >= [Error_Open_Time]))
这种变体也可能:
FilterRecords = Table.SelectRows(Source, each ([Error_Open_Time] > [Date_of_Call]) and (Date.AddDays([Date_of_Call], 1) >= [Error_Open_Time]))
如果您需要SQL,那么使用
SELECT [Date_of_Call], [Error_Open_Time]
FROM Table
WHERE [Error_Open_Time] > [Date_of_Call]
AND
(DateAdd(day, 1, [Date_of_Call]) >= [Error_Open_Time])
Date_of _CallColumn是否包含时间信息?我不认为该方法有效,但令人惊讶的是它确实有效!得到了与使用Alejandro方法相同的结果。我认为它有效,因为Date_of _CallColumn日期都使用12:00:00AM作为时间戳。如果时间戳不同,那么我认为该方法无效。@NickMomin,是的,因为其中,我在评论中问过你,Date_of_Call是否包含时间信息。我认为你使用的是12:00:00,所以认为它不包含时间信息。啊,是的,这很有道理。我想我会包括为什么/什么时候如果有人在类似情况下寻求解决方案,它将不起作用。谢谢:)工作得很有魅力!非常感谢你!!