0

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

我正在使用管道分隔的 etext 模板。

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

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

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

4

2 回答 2

0

如果你正在转换一个字符串(如你所说),你可以

  • 首先将其转换为数字,然后使用适当的格式掩码 ( 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>

看看这些是否有帮助。

于 2019-05-07T20:28:29.547 回答
0

在 FORMAT 列中添加 Number,#.00

于 2020-04-02T14:54:58.037 回答