关于 NUMSORTCHAR 字段填充
“NUMSORTCHAR 数字填充”处理缺省值可指定将应用于包含 NUMSORTCHAR 数据类型值的字段和位置。只有在您具有仅使用数字值或 <alphaPrefix><numericSuffix> 格式的 NUMSORTCHAR 数据类型时,才会应用该处理缺省值,其中:
- alphaPrefix 是由一个或多个字母字符组成的字符前缀。
- numericSuffix 是由一个或多个数字字符组成的字符后缀。
要使用指定的填充字符填充字段中的剩余空间,则可以应用填充:
- 在数字值之前,只能指定一个数字值 (LEFTPAD)。
- 在字母前缀与数字后缀之间 (PAD),使用 <alphaPrefix><numericSuffix> 格式。
- 在字母前缀之前 (LEFTPAD)。
注意: LEFTPAD 设置仅在以下情况下生效:
- 没有字母前缀。
- 有字母前缀,已设置 LEFTPAD 且 PAD 设置为空值;换言之,如果 PAD 设置为 PAD() 或 PAD(''),且在括号或单引号之间未指定任何字符。
您可以使用其中一种填充类型,也可以将两种类型结合使用。将两者结合使用时,用逗号分隔条目。
另外,将两者结合使用时,可以为 PAD 和 LEFTPAD 指定不同的填充字符。
如果未指定填充字符,则将使用缺省填充字符:
- PAD - 零 (0) 用作字母前缀与数字后缀之间的缺省填充字符。
- LEFTPAD - 空格用作左填充字符(如适用)。
填充值的格式
可能的填充值包括以下各项:
- “PAD(x)”和/或“LEFTPAD(y)”,其中 x/y 是任意字母数字字符。
-
“PAD('x')”和/或“LEFTPAD('y')”,其中 x/y 是任意字母数字字符。
如果要指定一个空格作为填充字符,该选项非常实用。
-
“PAD()”和/或“LEFTPAD()”,其中未指定填充字符。
如果不想对其中一个或两者使用任何填充,则使用此选项。
注意: 使用此选项的效果不同于未指定一个选项或另一个选项。换言之,使用此选项不会导致使用缺省填充字符。不会使用任何可见的填充字符。如果同时为 PAD 和 LEFTPAD 指定空值,则仍会使用 LEFTPAD 缺省填充字符(一个空格)。
示例
如果为字段指定 <alphaPrefix><numericSuffix> 格式和 10 个字符长度,且缺省情况下输入值“T455”(未设置此处理缺省值),则系统会将其显示为“T000000455”,且没有左填充。
如果在此处理缺省值设置如下时输入相同的值: | 则字段显示如下: |
---|---|
PAD(0) | T000000455
(与缺省行为相同) |
PAD() 或 PAD('')
[PAD 字符指定为空,未指定 LEFTPAD] |
T455 |
PAD(z) | Tzzzzzz455 |
LEFTPAD(0)
(未设置 PAD 值) |
T000000455
(与缺省行为相同) |
LEFTPAD(0)
且字段中的值仅为数字(例如,“455”) |
0000000455 |
LEFTPAD()
且字段中的值仅为数字(例如,“455”) |
455
(如果未指定字母字符,则与缺省行为相同。在此情况下,左填充包括空格。) |
PAD(''), LEFTPAD(0) | 000000T455 |
PAD(0), LEFTPAD(#) | T000000455
(与缺省行为相同,在此情况下,忽略 LEFTPAD。) |