如何在Oracle PLSQL中将数字的小数位数扩展到最小?

Ste*_*lke 4 sql oracle formatting plsql numbers

我无法弄清楚如何选择以下内容:

123        -> 123.00000
123.12     -> 123.12000
123.123456 -> 123.123456
Run Code Online (Sandbox Code Playgroud)

我想将小数位数扩展为例如5位小数(最小值)如果根本没有小数位,则应该有5个零.如果有超过5个小数位,那就没问题.

SELECT ROUND(123,5) FROM DUAL;
Run Code Online (Sandbox Code Playgroud)

结果:123而不是123.00000

该数字具有默认精度.

这是可能的,还是应该将其转换为带有oracle数字格式的varchar ?

我正在使用带有plsql的Oracle 10g.

Vin*_*rat 8

您可以使用以下内容:

SQL> SELECT X, to_char(X, 'fm99999999.00000999')
  2    FROM (SELECT 123 X FROM dual UNION ALL
  3          SELECT 123.12 FROM dual UNION ALL
  4          SELECT 123.123456 FROM dual);

         X TO_CHAR(X,'FM99999999.00000999
---------- ------------------------------
       123 123.00000
    123.12 123.12000
123.123456 123.123456
Run Code Online (Sandbox Code Playgroud)