如何修复oracle ORA-01722 invalid number错误

how to fix oracle ORA-01722 invalid number error

我在 myTable 的 column1(NUMBER(22,6)) 上有带有这些输入的 Oracle 数据库。

0
199935,15
1026299

我想像这样显示这些列:

00000000000000000.000000
00000000000199935.150000
00000000001026299.000000

我的查询:

SELECT trim(to_char(trim(replace(column1,',','.')),'9999999999999990.999999')) 
FROM myTable;

但 Oracle 显示此错误。我该如何解决?

01722. 00000 -  "invalid number"
*Cause:    The specified number was invalid.
*Action:   Specify a valid number.

如果您有一个数字列,您所要做的就是使用带有正确参数的 to_char;这应该可以完成工作:

select to_char(column1, '00000000000000000D000000', 'NLS_NUMERIC_CHARACTERS = ''.,''') from ...