以 datetime 格式傳回指定的日期。
語法
DATE(<year>, <month>, <day>)
參數
| 術語 | 定義 |
|---|---|
year |
代表年份的數位。year 自變數的值可以包含一到四位數。
year 自變數會根據計算機所使用的日期系統來解譯。支援從1900年3月1日起的日期。 如果您輸入具有小數位數的數字,數位會四捨五入。 針對大於 9999 或小於零的值(負值),函式會傳回 #VALUE! 錯誤。若 year 值介於0到49之間,則會將該值加到2000,得到最終值。 若介於50到99之間,則會加上1900以得出最終數值。 請參閱下列範例。
注意: 您應該盡可能使用四位數的 year 自變數來防止不必要的結果。 例如,使用 07 年作為年份值。 |
month |
根據下列規則代表月份或計算的數位: 不支援負整數。 有效值為 1-12。 如果 month 是介於 1 到 12 的數位,則代表年份的一個月。 1 代表 1 月、2 代表 2 月,依此表示 12 月為止。如果您輸入大於 12 的整數,就會發生下列計算:日期是藉由將 month 的值新增至 year來計算。 例如,如果您有 DATE(2008 年 18 月 18 日 11 日),函式會傳回相當於 2009 年 6 月 1 日的日期時間值,因為 2008 年初會新增 18 個月,因此會產生 2009 年 6 月的值。 請參閱下列範例。 |
day |
根據下列規則代表日期或計算的數位: 不支援負整數。 有效值為 1-31。 如果 day 是指定月份最後一天到 1 的數位,則它代表月份的一天。如果您輸入的整數大於指定月份的最後一天,就會發生下列計算:日期會藉由將 day 的值新增至 month來計算。 例如,在公式 DATE( 2008, 3, 32)中,DATE 函式會傳回相當於 2008 年 4 月 1 日的 datetime 值,因為 32 天會新增至 3 月初,產生 4 月 1 日的值。如果 day 包含小數點,則會四捨五入為最接近的整數值。 |
傳回值
傳回指定的日期 (datetime)。
言論
DATE 函式會採用輸入為自變數的整數,併產生對應的日期。 DATE 函式在公式提供年份、月和日的情況中最為有用。 例如,基礎數據可能包含無法辨識為日期格式的日期,例如YYYYMMDD。 您可以使用 DATE 函式與其他函式,將日期轉換成可辨識為日期的數位。
相較於將日期儲存為序號的 Excel Microsoft,DAX date 函式一律會傳回
datetime數據類型。 不過,如果您想要的話,您可以使用格式設定來將日期顯示為序號。日期和日期時間也可以指定為常值,格式為
dt"YYYY-MM-DD"、dt"YYYY-MM-DDThh:mm:ss"或dt"YYYY-MM-DD hh:mm:ss"。 當指定為常值時,不需要在表達式中使用 DATE 函式。 若要深入瞭解,請參閱 DAX 語法 |日期與時間。在匯出數據行或數據列層級安全性 (RLS) 規則中使用時,不支援在 DirectQuery 模式中使用此函式。
例子
簡單日期
下列公式會傳回 2009 年 7 月 8 日的日期:
= DATE(2009,7,8)
100年前的歲月
如果你輸入 year 的參數值介於0(零)到49(含)之間,該值會加到2000上方以計算年份。
以下公式於2008年1月2日返回:(2000+08)。
= DATE(08,1,2)
如果你輸入 year 的論點值介於50到99之間(含),該數值會加到1900上方以計算年份。
以下公式於1950年1月2日返回:(1900+50)。
= DATE(50,1,2)
百年後的歲月
如果 year 介於100到9999之間(含),則該數值作為年份。 下列公式會傳回 2008 年 1 月 2 日:
= DATE(2008,1,2)
月份
如果 month 大於 12,month 會將該月數新增至指定年份的第一個月。 下列公式會傳回 2009 年 2 月 2 日的日期:
= DATE(2008,14,2)
日
如果 day 大於指定月份的天數,day 將該天數新增至當月的第一天。 下列公式會傳回 2008 年 2 月 4 日的日期:
= DATE(2008,1,35)