昨天課上介紹了三個時間智能函數(shù):previousmonth、dateadd和totalMTD。
我在power BI 里做了測試,感覺dateadd函數(shù)比其它兩個復雜。
先說下昨天的兩個思考題:
dateadd函數(shù)參照時間段時的匯總邏輯:按照指定的參考時間段、方向和偏移量以及單位返回結(jié)果時間段,并且參考時間段的起點和終點在偏移后不能跨單位。
如:指定時間段為20190329-20190331,方向和偏移量為-1,單位為月,則結(jié)果時間段為20190228-20190228。
做環(huán)比分析時,求上月匯總應該使用dateadd。
因為月匯總是對月初到該月最后一天這個時間段內(nèi)的值的求和,而dateadd是參考時間段的。
但是我用previousmonth也可以得到正確結(jié)果,只是總計值沒有,不知道為什么。我覺得這種情況下這么用也沒錯吧,至少結(jié)果是對的。當然如果能深入理解這個函數(shù),知其然并知其所以然,就可以靈活使用了。
Previousmonth, dateadd和totalMTD之間的區(qū)別主要在于兩個方面,參數(shù)和結(jié)果時間區(qū)間。
Previousmonth參考的是一個時間點,返回的時間區(qū)間是上個月的月初到月末。
如果參考給的是一個時間段,那么它是以起點為參考的。(如果是這樣,所以環(huán)比分析時使用它也可以得到上月的匯總?)
totalMTD參考的也是時間點,是對當前時間點所在月份的月初至當前時間點的量求和。
如果參考給的是一個時間段,那么它是以終點為參考的。
totalMTD的使用方式為:MtD = totalmtd(sum('調(diào)用的函數(shù)'[金額]),'調(diào)用的函數(shù)'[日期])
dateadd參考的是時間段,返回的時間區(qū)間是偏移后的時間區(qū)間,它是把參考的時間段的起點和終點分別偏移,且不能跨單位。
比如 指定參考時間段為20190301-20190331,偏移-1,單位為月,結(jié)果應該是20190201-20190228,
指定參考時間段為20190329-20190331,偏移-1,單位為月,結(jié)果應該是20190228-20190228 (因為不能跨單位,所以結(jié)果時間段長度就成了1天了)。
以上是我目前對這三個時間函數(shù)的認識,也許有的地方目前的認識是不對,接下來的學習中再不斷實踐,也許會有更多發(fā)現(xiàn)。








暫無數(shù)據(jù)