天天看點

篩選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…​​