1. 程式人生 > 其它 >日期Table.TransformColumns(Power Query 之 M 語言)

日期Table.TransformColumns(Power Query 之 M 語言)

資料來源:

任意表,其中包含日期列

目標:

提取日期列中的元素

操作過程:

  選取日期列或日期時間列》【日期&時間列】》【日期】》選取

  

M公式:  

  = Table.TransformColumns( 表, {{"列名1", 轉換函式1, 資料型別1},…,{"列名n", 轉換函式n, 資料型別n}}, 剩餘列轉換函式, 處理不存在的列)

  轉換函式:

    年限(當前日期減去日期列中每一個日期):each Date.From(DateTime.LocalNow()) - _

    僅日期:DateTime.Date

    分析(僅對文字型日期有效):each Date.From(DateTimeZone.From(_))

    年:Date.Year

    年份開始值:Date.StartOfYear

    年份結束值(下一年的第一天):Date.EndOfYear

    月份:Date.Month

    月份開始值:Date.StartOfMonth

    月份結束值(下一月的第一天):Date.EndOfMonth

    一個月的某些日(當月最大天數):Date.DaysInMonth

    月份名稱:each Date.MonthName(_)

    一年的某一季度:Date.QuarterOfYear

    季度開始值:Date.StartOfQuarter

    季度結束值(下一季度的第一天):Date.EndOfQuarter

    一年的某一週:Date.WeekOfYear

    一個月的某一週:Date.WeekOfMonth

    星期開始值(預設以週一為開始):Date.StartOfWeek

    星期結束值(下一週的週一):Date.EndOfWeek

    天:Date.Day

    每週的某一天(週一從0起計):Date.DayOfWeek

    一年的某一日:Date.DayOfYear

    一天開始值(當天零點):Date.StartOfDay

    一天結束值(當天24點,即第二天零點):Date.EndOfDay

    星期幾:each Date.DayOfWeekName(_)

例外:

  合併日期和時間:先後選取日期列和時間列

    = Table.CombineColumns(表, {"日期列", "時間列"}, (columns) => List.First(columns) & List.Last(columns), "合併的日期時間列")

    Table.CombineColumns合併…Combine…

  最早:List.Min(列表)

  最新:List.Max(列表)

    List.Sum…統計資訊

原部落格各種作……所以換陣地了,不過每篇都搬過來,實在有點累,想看就自己看吧:http://blog.sina.com.cn/pureiceshadow