日期與時間解譯

QlikView會將資料中發現的每個日期、時間及時間戳記儲存為日期序號。日期序號用於日期、時間及時間戳記,並用在基於日期和時間實體的算術計算。因此,日期和時間可進行加減、時間間隔可加以比較等等。

日期序號是自 1899 年 12 月 30 日以來經過的 (實值) 天數,也就是說,此QlikView格式等同於 Microsoft Excel 及其他程式所用的 1900 年日期系統,範圍介於 1900 年 3 月 1 日至 2100 年 2 月 28 日之間。例如,33857 相當於 1992 年 9 月 10 日。若超出此範圍,QlikView使用延伸至西曆的相同日期系統。

時間的序號為介於 0 和 1 之間的數字。序號 0.00000 相當於 00:00:00,而 0.99999 相當於 23:59:59。混合數字則是表示日期和時間:序號 2.5 代表 1900 年 1 月 1 日中午 12:00 時。

然而,資料會按照字串的格式來顯示。預設會使用在控制台中所作的設定。也可使用指令碼中的數字解譯變數或透過格式設定函數來設定資料的格式。最後,還可在工作表物件的屬性工作表中將資料重新格式化。

請參閱: 數字解譯變數

請參閱: 格式設定函數

範例 1:  

1997-08-06 會儲存為: 35648
09:00 會儲存為: 0.375
1997-08-06 09:00 會儲存為: 35648.375

以及其他方式。

35648 以數字格式 'D/M/YY'會顯示為 6/8/97
0.375 以數字格式 'hh.mm'會顯示為 09.00

QlikView會遵循一組規則,來嘗試解譯日期、時間及其他資料類型。不過,最後的結果會受到此處描述的多項因素的影響。

範例 2:  

這些範例均假設使用下列的預設設定:

  • 數字小數點分隔符號:.
  • 簡短日期格式: YY-MM-DD
  • 時間格式: hh:mm

將資料讀取至 QlikView,且指令碼中沒有特殊解譯函數時,下表會顯示不同的表示法。

來源資料 QlikView預設解譯 'YYYY-MM-DD'日期格式 'MM/DD/YYYY'日期格式 'hh:mm'時間格式 '# ##0.00'數字格式
0.375 0.375 1899-12-30 12/30/1899 09:00 0.38
33857 33857 1992-09-10 09/10/1992 00:00 33 857.00
97-08-06 97-08-06 1997-08-06 08/06/1997 00:00 35 648.00
970806 970806 4557-12-21 12/21/4557 00:00 970 806.00
8/6/97 8/6/97 8/6/97 8/6/97 8/6/97 8/6/97

當資料讀取至 QlikView,并使用指令碼中的 date#( A, 'M/D/YY') 解譯函數時,下表會顯示不同的表示法:

來源資料 QlikView預設解譯 'YYYY-MM-DD'日期格式 'MM/DD/YYYY'日期格式 'hh:mm'時間格式 '# ##0.00'數字格式
0.375 0.375 0.375 0.375 0.375 0.375
33857 33857 33857 33857 33857 33857
97-08-06 97-08-06 97-08-06 97-08-06 97-08-06 97-08-06
970806 970806 970806 970806 970806 970806
8/6/97 8/6/97 1997-08-06 08/06/1997 00:00 35 648.00