今天我們來了解下竭业,在Power Query中如何提取需要的時間。
日期作為業(yè)務(wù)維度里面一個很重要的因素及舍,大部分的業(yè)務(wù)分析都離不開時間這個條件未辆,所以對于時間的提取的準(zhǔn)確性就顯得尤為重要。
在轉(zhuǎn)換獲取中锯玛,我們也可以通過快速方式及菜單方式進行轉(zhuǎn)換格式獲取咐柜。
1. 提取日期
一般情況下遭商,分析業(yè)務(wù)很大一部分都是用天為最小計量單位抡诞,但是一般導(dǎo)入到PQ里面的日期數(shù)據(jù)格式,都是日期時間格式DateTime利虫,后面會帶有0:00:00的時間后綴肯腕。但是我們只需要年月日的時間献宫,那我們可以通過函數(shù)進行提取,也可以通過菜單進行快速轉(zhuǎn)換实撒。
DateTime.Date(datetime as?any) as?nullable date
因為參數(shù)中是any姊途,所以參數(shù)內(nèi)的格式可以是日期涉瘾,日期時間,時間區(qū)域等格式捷兰。
DateTime.Date(#date(2018,11,11))=2018/11/11
DateTime.Date(#datetimezone(2018, 11, 11, 0, 0, 0, 8, 0))=2018/11/11
DateTime.Date(#datetime(2018,11,11,1,1,0))=2018/11/11
2. 提取年份
Date.Year(datetime?as any) as?nullable number
Date.Year(#datetime(2018,11,11,1,1,0))=2018
注意:雖然參數(shù)格式是any立叛,但是也需要包含有年份數(shù)據(jù)的格式。如果是純時間格式則會發(fā)生錯誤贡茅。
Date.StartOfYear(datetime as?any) as?any?提取起始年份
Date.StartOfYear(#datetime(2018,11,11,1,1,0))=2018/1/1 0:00:00
Date.StartOfYear(#date(2018,11,11))=2018/1/1
生成的格式是轉(zhuǎn)換數(shù)據(jù)的格式秘蛇。
Date.EndOfYear(datetime as?any) as?any?提取結(jié)束年份
Date.EndOfYear(#datetime(2018,11,11,1,1,0))=2018-12-31T23:59:59.9999999
3. 提取季度
Date.QuarterOfYear(datetime as?any) as?nullable number
提取季度數(shù),生成的是數(shù)值1-4
Date.StartOfQuarter(datetime as?any) as?any
提取起始季度顶考,返回的格式是提取數(shù)據(jù)的格式
Date.StartOfQuarter(#date(2018,11,1))=2018/10/1
Date.StartOfQuarter(#datetime(2018,5,1,09,10,1))=2018/4/1 0:00:00
Date.EndOfQuarter(datetime asany) asany
提取結(jié)束季度赁还,返回的格式是提取數(shù)據(jù)的格式
Date.EndOfQuarter(#date(2018,11,1))=2018/12/31
Date.EndOfQuarter(#datetime(2018,11,1,12,10,10))=2018-12-31T23:59:59.9999999
4. 提取月份
Date.Month(date as?any) as?nullabel number
返回的是月份數(shù)字格式
Date.Month(#date(2018,11,11))=11
Date.MonthName(date as?any, optional culture as?nullable text) as?nullable text
返回的是月份名稱文本格式,第2參數(shù)可以選擇中文或英文
Date.MonthName(#date(2018,11,11),"cn")=十一月
Date.MonthName(#date(2018,11,11),"en")=November
Date.StartOfMonth(datetime as?any) as?any
提取初始月份驹沿,返回的格式是提取數(shù)據(jù)的格式
Date.StartOfMonth(#date(2018,11,11))=2018/11/1
Date.StartOfMonth(#datetime(2018,11,11,10,1,20))=2018/11/1 0:00:00
Date.EndOfMonth(datetime as?any) as?any
提取期末月份艘策,返回的格式是提取數(shù)據(jù)的格式
Date.EndOfMonth(#date(2018,11,11))=2018/12/31
Date.EndOfMonth(#datetime(2018,11,11,10,1,20))=2018-11-30T23:59:59.9999999
5. 提取日
Date.Day(datetime as?any) as?nullable number
返回的是日的數(shù)字格式
Date.Day(#date(2018,11,11))=11
Date.StartOfDay(datetime as?any) as?any
返回初始日,返回的格式是提取數(shù)據(jù)的格式
Date.StartOfDay(#date(2018,11,11))=2018/11/1
Date.EndOfDay(datetiem as?any) as?any
返回結(jié)束日渊季,返回的格式是提取數(shù)據(jù)的格式
Date.EndOfDay(#datetime(2018,11,11,23,00,00))=2018-11-11T23:59:59.9999999
Date.DaysInMonth(datetime as?any) as?nullable number
返回月的實際天數(shù)朋蔫,返回格式是數(shù)值28-31
Date.DaysInMonth(#date(2016,2,10))=29
Date.DaysInMonth(#date(2018,2,10))=28
Date.DayOfYear(datetime as?any) as?nullable number
返回為當(dāng)年的多少天,返回格式是數(shù)值1-366
Date.DaysOfYear(#date(2016,12,31))=366
Date.DaysOfYear(#date(2018,12,31))=365
Date.DaysOfYear(#date(2018,11,11))=315