# 數字格式與時間格式的慣例

在許多解譯和格式設定函數中，可使用格式代碼來設定數字和日期的格式。本主題描述用於設定數字、日期、時間或時間戳記格式的慣例。這些慣例同時適用於指令碼與圖表函數。

## 數字格式

* 若要代表特定位數的數字，可使用符號 "0" 來代表每個數字。

* 若要代表可能的位數，可使用符號 "#"。如果在格式中，小數點左方僅包含 # 符號，且數字小於 1，則零會被裁減，並將以小數點開頭。如果在格式中，小數點右方包含 # 符號，則會顯示所有值。

* 若要標示千位分隔符號或小數點分隔符號的位置，可使用合適的千位分隔符號和小數點分隔符號。

格式代碼可用於定義分隔符號的位置，但無法以格式代碼來設定分隔符號。可在指令碼中使用 DecimalSep 和 ThousandSep 變數。

可使用千位分隔符號，將數字按任意數量的位置群組化，例如，格式字串 "0000-0000-0000" (千位分隔符號 = "-") 可用於將 12 位數的零件編號顯示為 "0012-4567-8912"。

[DecimalSep](https://help.qlik.com/zh-TW/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/NumberInterpretationVariables/DecimalSep.htm) 及 [ThousandSep](https://help.qlik.com/zh-TW/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/NumberInterpretationVariables/ThousandSep.htm)

範例：

* # ##0: 會將數字描述為含千位分隔符號的整數。
* ###0: 會將數字描述為不含千位分隔符號的整數。
* 0000: 會將數字描述為至少四位數的整數。例如，數字 123 會顯示為 0123。
* 0.000: 會將數字描述為帶三位小數。
* 0.0##: 會將數字描述為帶三位小數。一些可能會顯示為零。

## 特殊數字格式

QlikView 可解譯以 2 和 36 之間任何基數來表示的數字並設定其格式，包括二進位、八進位及十六進位。也可處理羅馬格式。

數字格式

| 格式 | 描述 |
| --- | --- |
| 二進位格式 | 若要表示二進位格式，格式代碼應以 (bin) 或 (BIN) 開頭。 |
| 八進位格式 | 若要表示八進位格式，格式代碼應以 (oct) 或 (OCT) 開頭。 |
| 十六進位格式 | 若要表示十六進位格式，格式代碼應以 (hex) 或 (HEX) 開頭。若使用大寫版本，格式設定會使用 A-F (例如 14FA)。非大寫版本會讓格式設定使用 a-f (例如 14fa)。無論格式代碼大寫與否，兩種版本都可順利解譯。 |
| 小數點格式 | 可使用 (dec) 或 (DEC) 來表示小數點格式，但並非必要。 |
| 自訂基數格式 | 若要以 2 和 36 之間任何基數來表示格式，格式代碼應以 (rxx) 或 (Rxx) 開頭，其中 xx 為代表所用基數的兩位數。如果使用大寫的 R，則當 QlikView 進行格式設定時，基數中大於 10 的字母會大寫 (例如 14FA)。非大寫的 r 會讓格式設定使用非大寫字母 (例如 14fa)。無論格式代碼大寫與否，兩種版本都可順利解譯。請注意，(r02) 相當於 (bin)，(R16) 相當於 (HEX)，依此類推。 |
| 羅馬格式 | 若要表示羅馬數字，格式代碼應以 (rom) 或 (ROM) 開頭。若使用大寫版本，格式設定會使用大寫字母 (例如 MMXVI)。非大寫版本會讓格式設定使用小寫字母 (例如 mmxvi)。無論格式代碼大寫與否，兩種版本都可順利解譯。羅馬數字概括使用減號來代表負數，0 代表零。羅馬格式會忽略小數。 |

範例：

* num(199, '(bin)') 傳回 11000111
* num(199, '(oct)') 傳回 307
* num(199, '(hex)') 傳回 c7
* num(199, '(HEX)' ) 傳回 C7
* num(199, '(r02)' ) 傳回 11000111
* num(199, '(r16)') 傳回 c7
* num(199, '(R16)' ) 傳回 C7
* num(199, '(R36)') 傳回 5J
* num(199, '(rom)') 傳回 cxcix
* num(199, '(ROM)' ) 傳回 CXCIX

## 日期

您可以使用以下符號設定日期格式。可使用任意的分隔符號。

日期格式符號

| 符號 | 描述 |
| --- | --- |
| D | 若要描述日期，可使用符號 "D" 來代表每個數字。 |
| M | 若要描述月份，可使用符號 "M"。<br><br><ul> <li>使用 <span>"M"</span> 或 <span>"MM"</span> 代表一位數或二位數。 </li> <li> <span>"MMM"</span> 代表由作業系統或指令碼中覆寫系統變數 <span>MonthNames</span> 所定義、以字母表示的簡短月份名稱。 </li> <li> <span>"MMMM"</span> 代表由作業系統或指令碼中覆寫系統變數 <span>LongMonthNames</span> 所定義、以字母表示的完整月份名稱。 </li> </ul><br><br>[MonthNames](https://help.qlik.com/zh-TW/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/NumberInterpretationVariables/MonthNames.htm) 及 [LongMonthNames](https://help.qlik.com/zh-TW/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/NumberInterpretationVariables/LongMonthNames.htm) |
| Y | 若要描述年度，可使用符號 "Y" 來代表每個數字。 |
| W | 若要描述工作日，可使用符號 "W"。<br><br><ul> <li> <span>"W"</span> 會以一位數的形式傳回星期幾 (例如 0 為星期一)。 </li> <li> <span>"WW"</span> 會傳回兩位數的數字 (例如 02 為星期三)。 </li> <li> <span>"WWW"</span> 會顯示由作業系統或指令碼中覆寫系統變數 <span>DayNames</span> 所定義、工作日名稱的簡短版本 (例如 Mon)。 </li> <li> <span>"WWWW"</span> 會顯示由作業系統或指令碼中覆寫系統變數 <span>LongDayNames</span> 所定義、工作日名稱的完整版本 (例如 Monday)。</li> </ul><br><br>[DayNames](https://help.qlik.com/zh-TW/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/NumberInterpretationVariables/DayNames.htm) 及 [LongDayNames](https://help.qlik.com/zh-TW/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/NumberInterpretationVariables/LongDayNames.htm) |

範例： (使用 2013 年 3 月 31 日作為日期範例)

* YY-MM-DD 會將日期描述為 13-03-31。
* YYYY-MM-DD 會將日期描述為 3/31/13。
* YYYY-MMM-DD 會將日期描述為 2013-Mar-31。
* DD MMMM YYYY 會將日期描述為 31 March 2013。
* M/D/YY 會將日期描述為 3/31/13。
* W YY-MM-DD 會將日期描述為 6 13-03-31。
* WWW YY-MM-DD 會將日期描述為 Sat 13-03-31。
* WWWW YY-MM-DD 會將日期描述為 Saturday 13-03-31。

## 時間

您可以使用以下符號設定時間格式。可使用任意的分隔符號。

時間格式符號

| 符號 | 描述 |
| --- | --- |
| h | 若要描述小時，可使用符號 "h" 來代表每個數字。 |
| m | 若要描述分鐘，可使用符號 "m" 來代表每個數字。 |
| s | 若要描述秒鐘，可使用符號 "s" 來代表每個數字。 |
| f | 若要描述秒分數，可使用符號 "f" 來代表每個數字。 |
| tt | 若要以上午/下午的格式描述時間，可在時間之後使用符號 "tt"。 |

範例： (使用 18.30 作為時間範例)：

* hh:mm：將時間描述為 18:30
* hh.mm.ss.ff：將時間描述為 18.30.00.00
* hh:mm:tt：將時間描述為 06:30:pm

## 時間戳記

時間戳記中使用上述用於日期和時間的相同標記法。

範例： (使用 2013 年 3 月 31 日 18.30 作為時間戳記範例)：

* YY-MM-DD hh:mm：將時間戳記描述為 13-03-31 18:30
* M/D/Y hh.mm.ss.ffff：將時間戳記描述為 3/31/13 18.30.00.0000