跳到主要內容 跳至補充內容

yeartodate - 指令碼與圖表函數

此功能會尋找輸入時間戳記是否位於前次載入指令碼之日期的年份內,並傳回 True (如果在其內),False (如果不在其內)。

語法:  

YearToDate(timestamp[ , yearoffset [ , firstmonth [ , todaydate] ] ])

傳回的資料類型: 布林

資訊備註

Qlik Sense 中,布林值 true 值以 -1 代表,而 false 值以 0 代表。

yeartodate() 函數的範例圖表

圖表顯示 yeartodate 函數會傳回 True 或 False 值的日期值。

如未使用任何選用參數,年初至今表示是從 1 月 1 日起,在一個日曆年內的任何日期,但不超過 (可包含) 上次指令碼執行的日期。

換言之,不透過其他參數觸發時,yeartodate() 函數會用來評估時間戳記,並根據日曆年內是否出現日期來傳回布林值結果,但不超過 (可包含) 重新載入的發生日期。

但是,這也可能使用 firstmonth 引數取代年份開始日期,以及使用 yearoffset 引數比較前一年或下一年。

最後,在歷史資料集的例子中,yeartodate() 函數提供設定 todaydate 的參數,這也會改為比較日曆年的時間戳記,但不超過 (可包含) todaydate 引數中提供的日期。

引數
引數 描述
timestamp

要評估的時間戳記,例如「10/12/2012」。

yearoffset

透過指定 yearoffsetyeartodate 針對另一年中的相同期間傳回 True。負數 yearoffset 表示前一年,正數是未來年的位移。最新的年結束日期透過指定 yearoffset = -1 實現。如果省略,則採用 0。

firstmonth

透過指定 firstmonth 介於 1 和 12 之間 (如果省略,則為 1),可將年開始向前移到任何月份的第一天。例如,如果要使用起始於 5 月 1 日的會計年度,可指定 firstmonth = 5。 1 的值表示會計年度開始於 1 月 1 日,而 12 的值表示會計年度開始於 12 月 1 日。

todaydate 透過指定 todaydate (如果省略,則為上次指令碼執行的時間戳記),即可移動作為期間上限的日期。

什麼情況下使用

yeartodate() 函數會傳回布林值結果。通常,此函數類型將作為 if 運算式中的條件使用。這會傳回彙總或計算,其相依於每年出現的評估日期,但不超過 (可包含) 最後一次應用程式重新載入的日期。

例如,YearToDate() 函數可用來識別目前年份迄今製造的所有設備。

下列範例假設最後一個重新載入時間 = 11/18/2011。

函數範例
範例 結果
yeartodate( '11/18/2010') 傳回 False
yeartodate( '02/01/2011') 傳回 True
yeartodate( '11/18/2011') 傳回 True
yeartodate( '11/19/2011') 傳回 False
yeartodate( '11/19/2011', 0, 1, '12/31/2011') 傳回 True
yeartodate( '11/18/2010', -1) 傳回 True
yeartodate( '11/18/2011', -1) 傳回 False
yeartodate( '04/30/2011', 0, 5) 傳回 False
yeartodate( '05/01/2011', 0, 5) 傳回 True

區域設定

除非另有說明,否則此主題中的範例皆使用下列日期格式:MM/DD/YYYY。日期格式是在資料載入指令碼的 SET DateFormat 陳述式中指定。由於地區設定和其他因素,您系統中的預設日期格式可能會不同。您可以變更以下範例中的格式,以滿足您的需求。或者,您可以在載入指令碼中變更格式,以符合這些範例。

應用程式中的預設地區設定是根據安裝 Qlik Sense 之電腦或伺服器的地區系統設定。若您存取的 Qlik Sense 伺服器設定為瑞典,資料載入編輯器將會對日期、時間和貨幣使用瑞典文地區設定。這些地區格式設定與 Qlik Sense 使用者介面中顯示的語言無關。Qlik Sense 顯示的語言將與您正在使用的瀏覽器相同。

範例 1 – 基本範例

範例 2 – yearoffset

範例 3 – firstmonth

範例 4 – todaydate

範例 – 圖表物件範例

範例 6 – 情境

此頁面是否對您有幫助?

若您發現此頁面或其內容有任何問題——錯字、遺漏步驟或技術錯誤——請告知我們可以如何改善!