如何在 etext 模板中格式化数字

How to format a number in etext Template

我的 BIP 报告中有一项要求,如果值为“163.8”,则预期结果应为“00000163.800”

我正在使用竖线分隔的电子文本模板。

我尝试了以下命令但没有任何效果:

Number, ###.##
TO_NUMBER(MyStringName,'99999999.999')
TO_NUMBER(MyStringName,'00000000.000')
TO_NUMBER(MyStringName,'########.###')
FORMAT_NUMBER(MyStringName,'99999999.999')

MyString = '163.8' 预期输出 = '00000163.800'

如果您要转换 字符串(如您所说),您可以

  • 先将其转换为数字,然后再转换回字符,使用适当的格式掩码(result_1)
  • 应用嵌套 RPAD & LPAD 函数 (result_2)

例如:

SQL> with test (col) as
  2    (select '163,8' from dual)
  3  select
  4    to_char(to_number(col), '0000000D000') result_1,
  5    lpad(rpad(col, length(col) + 2, '0'), 11, 0) result_2
  6  from test;

RESULT_1     RESULT_2
------------ -----------
 0000163,800 0000163,800

SQL>

看看这些是否有帮助。

在 FORMAT 列中添加 Number,#.00