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

week - 指令碼與圖表函數

此函數會傳回根據 ISO 8601 代表週數的整數。週數是根據標準數字解譯,從運算式的日期解譯計算所得。

語法:  

week(timestamp [, first_week_day [, broken_weeks [, reference_day]]])

week() 函數的圖表範例,且具有中斷的週

圖表顯示週函數如何分散一年第一個月的日期,並套用預設中斷週的系統。

週數計數開始於 1 月 1 日 (這是因為預設會設定 Qlik Sense 以使用中斷的週)。第一週結束於 FirstWeekDay 系統變數前的日子,無論該週出現多少天。FirstWeekDay 系統變數可在 week() 函數內以 first_week_day 引數取代。

week() 函數的圖表範例,且具有未中斷的週和 ReferenceDay=0

圖表顯示週函數如何分散一年第一個月內的日期,且不會套用中斷週的系統。

week() 函數也會提供說明是否透過 broken_weeks 引數使用中斷或未中斷的週的功能。如果採用中斷週功能,第 1 週必須包含 1 月的特定天數,如 ReferenceDay 系統變數所定義。因此,第 1 週有可能開始於 12 月,或者,第 52 或 53 週可能延續至 1 月。最後,reference_day 引數允許函數覆寫 ReferenceDay 系統變數。

不同於 weekname() 函數,week() 函數也不會傳回年份值。這允許彙總比較各年份的週。

此函數內可使用 4 種引數。

這是要轉換的時間戳記或解析為時間戳記的運算式的日期,例如「2012-10-12」。

如果您未指定 first_week_day,則變數 FirstWeekDay 的值將用作週的第一天。

如果您想要將另一天用作週的第一天,將 first_week_day 設為:

  • 0 表示星期一
  • 1 表示星期二
  • 2 表示星期三
  • 3 表示星期四
  • 4 表示星期五
  • 5 表示星期六
  • 6 表示星期日

現在,函數傳回的整數將使用您透過 first_week_day 設定的週的第一天。

FirstWeekDay

如果您未指定 broken_weeks,則變數 BrokenWeeks 的值將用於定義週是否中斷。

依預設,Qlik Sense 函數使用未中斷的週。這表示:

  • 在某些年中,第 1 週從 12 月開始,而在其他年中,第 52 或 53 週延續至 1 月。
  • 第 1 週至少有四天總是在 1 月。

替代選項是使用中斷的週。

  • 第 52 或 53 週不會延續至 1 月。
  • 第 1 週從 1 月 1 日開始,並且在大多數情況下,不是完整的週。

可使用下列值:

  • 0 (=使用未中斷的週)
  • 1 (= 使用中斷的週)

BrokenWeeks

如果您不指定 reference_day,變數 ReferenceDay 的值將用於定義要設定一月份的哪一天為參照日以定義第 1 週。依照預設,Qlik Sense 函數使用 4 作為參照日。這表示第 1 週必須包含 1 月 4 日,或者換言之,第 1 週必須始終至少在 1 月擁有 4 日。

下列值可用來設定不同的參考日:

  • 1 (= 1 月 1 日)
  • 2 (= 1 月 2 日)
  • 3 (= 1 月 3 日)
  • 4 (= 1 月 4 日)
  • 5 (= 1 月 5 日)
  • 6 (= 1 月 6 日)
  • 7 (= 1 月 7 日)

ReferenceDay

什麼情況下使用

若您想要按週比較彙總,則 The week() 函數很實用。例如,若您想要按週查看產品的總銷售額,可使用此函數。若使用者想要計算不一定要使用應用程式的 BrokenWeeksFirstWeekDayReferenceDay 系統變數時,即會選擇 week() 函數,而不是 weekname()

此外,當您想要比較多個年份時,即會選擇 week() 函數。透過使用 week() 函數,使用者能夠為這些變數建立自己的組合,並用於使用函數的例子中。

這些維度在建立時可使用函數建立「主要行事曆」表格的欄位,或是直接在圖表中當作計算維度使用。

函數範例
範例 結果

week( '10/12/2012')

傳回 41。

week( '35648') 傳回 32,因為 35648 = 08/06/1997。
week('10/12/2012', 0, 1) 傳回 42。

區域設定

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

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

範例 1 – 預設系統變數

範例 2 – first_week_day

範例 3 – unbroken_weeks

範例 4 – reference_day

範例 – 圖表物件範例

範例 6 – 情境

此頁面是否對您有幫助?

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