Oracle-11g-R2

將值複製到另一列 - ORA-01481:無效的數字格式模型

  • September 4, 2015

我想將col1 NUMBER(13,4)列的值複製到另一個新添加的 col1_temp VARCHAR2(50)。要執行此操作,我建構了以下更新查詢:

update table1 set col1_temp = to_char(col1, '99.99%');

這是兩列的目前視圖:

col1  |  col1_temp
-------------------
13.9  |  null
65.7  |  null
21.63 |  null
50.5  |  null
10.8  |  null
30.1  |  null

但是查詢的執行總是給我這個錯誤:

SQL Error: ORA-01481: invalid number format model

我做錯了什麼?

%不是數字的有效格式說明符。

請參閱以下文件:

數字格式模型

這樣做:

update table1 set col1_temp = to_char(col1, '99.99')||'%';

也要小心。您col1可以持有比 99.99 更大的值。這些值將給出 ###### 作為結果,並且該值將被to_char命令以 2 位小數四捨五入。

引用自:https://dba.stackexchange.com/questions/114207