数字格式和时间格式的约定
在许多解释和格式化函数中,可以通过使用格式代码设置数字和日期的格式。本主题介绍对数字、日期、时间或时间戳设置格式所使用的惯例。这些惯例同时适用于脚本和图表函数。
数字格式
-
要表示一个具体数位的数字,可以使用符号 "0" 代表每一个数位。
-
要表示一个可能数位,可以使用符号 "#"。如果格式只包含小数点左侧的 # 符号,并且数字小于 1,则会将零去掉,并以小数点开始。如果格式包含小数点右侧的# 符号,则会显示所有值。
-
要标记千位分隔符的位置或小数位分隔符的位置,可以使用适用的千位分隔符和小数位分隔符。
格式代码用于定义分隔符的位置。无法在格式代码中设置分隔符。在脚本中,对于这种情况可以使用 DecimalSep 和 ThousandSep 变量。
可以对任何位置的数字使用千位分隔符分组数位。例如,一个格式字符串 "0000-0000-0000"(千位分隔符=“-”)可以用于显示一个十二位部件编号 "0012-4567-8912"。
示例:
- # ##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,则大于 10 的基数中的字母在 QlikView 格式化时将变成大写(如 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"。
|
Y |
要描述年,每一个数位使用符号 "Y"。 |
W |
要描述周几,使用符号 "W"。
|
示例: (使用 31st March 2013 作为示例日期)
- 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 |
要以 AM/PM 格式描述时间,在时间后使用符号 "tt"。 |
示例: (使用 18.30 作为示例时间):
- hh:mm:描述如 18:30 的时间
- hh.mm.ss.ff:描述如 18.30.00.00 的时间
- hh:mm:tt:描述如 06:30:pm 的时间
时间戳
在时间戳中使用的符号与以上在日期和时间中使用的符号相同。
示例: (使用 31th March 2013 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 的时间戳