如何在十进制中选择一个数字值,如12到12.00,而不在oracle中使用to_char?
答案 0 :(得分:2)
如果您正在使用SQL * Plus,则可以通过更改列格式来格式化输出:
SQL> desc temp
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NUMBER
FIELD1 VARCHAR2(100)
FIELD2 VARCHAR2(100)
SQL> select * from temp;
ID FIELD1 FIELD2
---------- ---------- ----------
1 hello yyyy
2 hello yyyy
SQL> col id format 999.99
SQL> select * from temp;
ID FIELD1 FIELD2
------- ---------- ----------
1.00 hello yyyy
2.00 hello yyyy
答案 1 :(得分:2)
您可以使用
Select To_char(ID,'9990.99') from temp
0必须格式化。如果你想要0.00
值(例如:0.10,0.06),你必须在没有0的格式中放置0,它将看起来像这样.00(例如:.10,。06)。在这里查看
没有0
Select To_char(0,'999.99') from Dual
0
Select To_char(0,'9990.99') from Dual
答案 2 :(得分:1)
将其投放到NUMBER(9, 2)
(9是任意的,如果你愿意,可以使用别的东西),它将采用这种形式。
但请注意,一旦将其放入应用程序中,表示形式就可以使用任何语言。如果它将该数据类型表示为float,您将获得一个浮点数,它将不再具有您想要的格式。在这种情况下,最好不要格式化它,直到数字在数据库之外。