如何以正确的格式在oracle中对数字进行假脱机

时间:2017-02-10 10:34:46

标签: oracle plsql plsqldeveloper spool

我试图通过在SqlDeveloper中执行脚本来假脱机记录,除了打印NUMBER(38,0)数据类型的列记录外,一切正常。

所有数字记录均以下列格式打印:

1.5E+18

我通过使用set尝试了很多组合,但没有任何工作。

1 个答案:

答案 0 :(得分:1)

您可以使用to_char;例如:

SQL> select to_char(n, '999999999999999999999') from numbers;

TO_CHAR(N,'99999999999
----------------------
   1500000000000000000

这样您就可以决定要使用的确切格式了;例如:

SQL> select to_char(n, 'FM999G999G999G999G999G999G999G999') from numbers;

TO_CHAR(N,'FM999G999G999G999G999
--------------------------------
1.500.000.000.000.000.000

如果您不需要完全控制格式,和/或您不想改变代码,可以按照Nicholas Krasnov的建议:

SQL> set numwidth 50
SQL> select n from numbers;

                                                 N
--------------------------------------------------
                               1500000000000000000