关于 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。)

相关主题