防止Oracle削减我的浮点数的前导零,如0.1 0.2 0.5等

Har*_*rry 0 sql oracle floating-point

我有一个像这样的oracle查询:

SELECT floatColum0,floatColum1,ROUND(floatColum2,2) from table;
Run Code Online (Sandbox Code Playgroud)

这是返回这样的值:

.2 , 1.23, .23
Run Code Online (Sandbox Code Playgroud)

我怎么能得到这样的东西?(前导零)

0.2, 1.23, 0.23 ?
Run Code Online (Sandbox Code Playgroud)

Roh*_*bhu 5

它不是前导零的数字cut,而是数字的字符串表示.大多数情况下,这不是问题,因为应用程序逻辑与数据库中的数据一起使用,数据库与实际数据(在本例中为数字本身)一起使用而不是其字符串表示.但是如果你绝对需要这个,你可以在查询中格式化字符串:

SET numformat 99.99;
SELECT floatColum0,floatColum1,ROUND(floatColum2,1) from table;
Run Code Online (Sandbox Code Playgroud)

这应该是诀窍,但再次记住,这是一个非常毫无意义的练习.有关其他详细信息,请访问:http://docs.oracle.com/cd/B19306_01/server.102/b14200/sql_elements004.htm#SQLRF00211