筛选Table.SelectRows-日期与时间(Power Query 之 M 语言)
数据源:
包含日期与时间的任意数据
目标:
对日期与时间进行筛选
M公式:
= Table.SelectRows( 表,筛选条件)
筛选条件:
等于:each [日期列] = #date(年,月,日)
不等于:each [日期列] <> #date(年,月,日)
早(小)于:each [日期列] < #date(年,月,日)
早(小)于或等于:each [日期列] <= #date(年,月,日)
晚(大)于:each [日期列] > #date(年,月,日)
晚(大)于或等于:each [日期列] >= #date(年,月,日)
在接下来的n年/季/月/周/日/时/分/秒:
年:each Date.IsInNextYears([日期列], n)
季:each Date.IsInNextQuarters([日期列], n)
月:each Date.IsInNextMonths([日期列], n)
周:each Date.IsInNextWeeks([日期列], n)
日:each Date.IsInNextDays([日期列], n)
时:each DateTime.IsInNextHours([日期列], n)
分:each DateTime.IsInNextMinutes([日期列], n)
秒:each DateTime.IsInNextSeconds([日期列], n)
在之前的n年/季/月/周/日/时/分/秒:
年:each Date.IsInPreviousNYears([日期列], n)
季:each Date.IsInPreviousNQuarters([日期列], n)
月:each Date.IsInPreviousNMonths([日期列], n)
周:each Date.IsInPreviousNWeeks([日期列], n)
日:each Date.IsInPreviousNDays([日期列], n)
时:each DateTime.IsInPreviousNHours([日期列], n)
分:each DateTime.IsInPreviousNMinutes([日期列], n)
秒:each DateTime.IsInPreviousNSeconds([日期列], n)
最早:let earliest = List.Min(步骤名[日期列]) in each [日期列] = earliest
最晚:let latest = List.Max(步骤名[日期列]) in each [日期列] = latest
不是最早的:let earliest = List.Min(步骤名[日期列]) in each [日期列] <> earliest
不是最新的:let latest = List.Max(步骤名[日期列]) in each [日期列] <> latest
按年:
去年:each Date.IsInPreviousYear([日期列])
今年:each Date.IsInCurrentYear([日期列])
下一年:each Date.IsInNextYear([日期列])
本年度截止到现在:each Date.IsInYearToDate([日期列])
按季度:
上季度:each Date.IsInPreviousQuarter([日期列])
本季度:each Date.IsInCurrentQuarter([日期列])
下季度:each Date.IsInNextQuarter([日期列])
第一季度:each Date.QuarterOfYear([日期列]) = 1
第二季度:each Date.QuarterOfYear([日期列]) = 2
第三季度:each Date.QuarterOfYear([日期列]) = 3
第四季度:each Date.QuarterOfYear([日期列]) = 4
按月:
上月:each Date.IsInPreviousMonth([日期列])
本月:each Date.IsInCurrentMonth([日期列])
下月:each Date.IsInNextMonth([日期列])
指定月:each Date.Month([日期列]) = 月份数
按周:
上周:each Date.IsInPreviousWeek([日期列])
本周:each Date.IsInCurrentWeek([日期列])
下周:each Date.IsInNextWeek([日期列])
按天:
昨天:each Date.IsInPreviousDay([日期列])
今天:each Date.IsInCurrentDay([日期列])
明天:each Date.IsInNextDay([日期列])
以小时计算:
过去1小时:each DateTime.IsInPreviousHour([日期列])
当前小时:each DateTime.IsInCurrentHour([日期列])
接下来的1小时:each DateTime.IsInNextHour([日期列])
以分钟计算:
过去1分钟:each DateTime.IsInPreviousMinute([日期列])
当前分钟:each DateTime.IsInCurrentMinute([日期列])
接下来的1分钟:each DateTime.IsInNextMinute([日期列])
以秒计算:
过去1秒:each DateTime.IsInPreviousSecond([日期列])
当前秒:each DateTime.IsInCurrentSecond([日期列])
接下来的1秒:each DateTime.IsInNextSecond([日期列])
日期:each [日期列] is date
时间:each [日期列] is time
其他:选择…Select…