首頁>科技>

時間是個神奇的概念,在資料分析中也是一個非常重要的維度,PowerBI裡面時間日期函式和Excel裡面差不多,功能也一樣,所以打算用一篇寫一下,如果對Excel裡面的函式非常熟悉了,大概瀏覽一遍就行了,應該還是有那麼幾個可以加深一下印象,下面就開始了。

【TODAY】

TODAY()

返回當前日期,預設是返回datetime格式,但是時間部分全是0。

今天 = TODAY()

【NOW】

NOW()

以datetime格式返回當前日期和時間,精確到秒。

現在 = NOW()

【DAY】

DAY(<date>)

返回一月中的日期,1到31之間的數字。

月第N天 = DAY([日期])

【WEEKDAY】

WEEKDAY(<date>, <return_type>)

返回指示日期屬於星期幾的數字,1到7之間的數字。這裡需要注意返回型別:

返回型別:1,周從星期日 (1) 開始,到星期六 (7) 結束;返回型別:2,周從星期一 (1) 開始,到星期日 (7) 結束;返回型別:3,周從星期一 (0) 開始到星期日 (6) 結束。
星期幾(1) = WEEKDAY([今天],1)星期幾(2) = WEEKDAY([今天],2)星期幾(3) = WEEKDAY([今天],3)

【WEEKNUM】

WEEKNUM(<date>[, <return_type>])

根據return_type值返回給定日期的週數。

有兩個系統用於此函式:

系統1:包含1月1日的周是一年的第一週,編號為第1周;系統2:包含一年第一個星期四的周是一年的第一週,編號為第1周。return_type周開始於系統1 或省略星期日12星期一121星期一2
第N周1 = WEEKNUM([日期],1)第N周2 = WEEKNUM([日期],2)第N周21 = WEEKNUM([日期],21)

【MONTH】

MONTH(<datetime>)

以數字形式返回月份值,1到12之間的數字。

第N月 = MONTH([日期])

【QUARTER】

QUARTER(<date>)

將季度返回為從1到4的數值。

第N季度 = QUARTER([日期])

【YEAR】

YEAR(<date>)

返回日期的年份,1900到9999之間的四位整數。

第N年 = YEAR([日期])

【HOUR】

HOUR(<datetime>)

以數字形式返回小時值,0到23之間的數字。

小時數 = HOUR([現在])

【MINUTE】

MINUTE(<datetime>)

給定日期和時間值,以數字形式返回分鐘值,0到59之間的數字。

分鐘數 = MINUTE([現在])

【SECOND】

SECOND(<datetime>)

以數字形式返回時間值的秒數,0到59之間的數字。

秒數 = SECOND([現在])

【DATE】

DATE(<year>, <month>, <day>) 

以日期/時間格式返回指定的日期。

DATE日期 = DATE([第N年],[第N月],[月第N天])

【TIME】

TIME(hour, minute, second)

將以數值形式給定的小時、分鐘和秒值轉換為日期/時間格式的時間。

Time小時 = TIME([小時數],[分鐘數],[秒數])

【DATEDIFF】

DATEDIFF(<start_date>, <end_date>, <interval>)

返回兩個日期之間跨越的間隔邊界的計數。

start_date:標量日期/時間值;end_date:標量日期/時間值返回值;interval:比較日期時要使用的間隔。值可以是下列任一值:

- SECOND

- MINUTE

- HOUR

- DAY

- WEEK

- MONTH

- QUARTER

- YEAR

間隔年數 = DATEDIFF([日期],[現在],YEAR)間隔季度數 = DATEDIFF([日期],[現在],QUARTER)間隔月數 = DATEDIFF([日期],[現在],MONTH)間隔週數 = DATEDIFF([日期],[現在],WEEK)間隔天數 = DATEDIFF([日期],[現在],DAY)間隔小時 = DATEDIFF([日期],[現在],HOUR)間隔分鐘 = DATEDIFF([日期],[現在],MINUTE)

【EDATE】

EDATE(<start_date>, <months>)

返回在開始日期之前或之後指定月份數的日期。

3月後 = EDATE([今天],3)3月前 = EDATE([今天],-3)

如果遇到月份最大天數小於開始日期月份天數,就會返回實際月份的最大值。比如2月最大28天,3月最大31天,如果3月作為開始月份,那麼28-31號這幾天減1個月到2月份都會顯示2.28號↓

特殊2月 = EDATE(DATE(2021,3,30),-1)

【EOMONTH】

EOMONTH(<start_date>, <months>)

以日期/時間格式返回指定月份數之前或之後的月份的最後一天的日期。

有的時候需要通報每月資料完成率,但需要結合實際時間進度來看,看看完成率和時間進度是否一致,就可以透過這個函式進行計算了↓

本月最後一天 = EOMONTH([今天],0)本月剩餘天數 = DATEDIFF([今天],[本月最後一天],DAY)本月時間進度 = DIVIDE(DAY([今天]),DAY([本月最後一天]))

【YEARFRAC】

YEARFRAC(<start_date>, <end_date>, <basis>)

計算兩個日期之間的天數佔全年天數的比值,比如開始日期是2021.3.1號,結束日期是2021.4.3,相差33天,那麼他們的結果就是33/365。有個basis引數需要注意,去不同的值除以的數量不一樣,一般情況選1就行了。

0 - 美國 (NASD) 30/3601 - 實際天數/實際天數2 - 實際天數/3603 - 實際天數/3654 - 歐洲 30/360
YearF0 = YEARFRAC([日期],[今天],0)YearF1 = YEARFRAC([日期],[今天],1)YearF2 = YEARFRAC([日期],[今天],2)YearF3 = YEARFRAC([日期],[今天],3)

End

6
最新評論
  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 100個應用全線擴張的超新星SOLANA