|
问题:
输入的浮点数与小数位,input output------- ---------0.123 0.12.123 0.12.1 0.10.199 0.20123.199 123.1990
解法:
create table test_t(col_1 number(3,2),col_2 number(7,4));insert into test_t(col_1) values(0.123);insert into test_t(col_1) values(.123);insert into test_t(col_1) values(.1);insert into test_t(col_1) values(.199);insert into test_t(col_2) values(123.199);//1.直接查询数据,就能显示效果x number(p,s):p:x的有效位数,既x的宽度s:x的小数位数x的有效位数计算:s>=0,x的有效位:ps<0,x的有效位:p+|s|select * from test_t;COL_1 COL_2----- ---------0.12 /*因为小数点只是2位,在进行存储时进行了四舍五入*/0.12 /*因为小数点只是2位,在进行存储时进行了四舍五入,当整数部分空缺时,在数据最左边补齐一个0*/0.10 /*当实际值的小数位数小于指定位数时,在数字最右边补齐0*/0.20 /*存储时进行了四舍五入*/123.1990//2.使用to_char()函数格式输出SQL> select nvl(to_char(col_1,990.99),'Unknow') col_1,2 nvl(to_char(col_2,990.9999),'Unknow') col_23 from test_t;COL_1 COL_2------- ---------0.12 Unknow0.12 Unknow0.10 Unknow0.20 UnknowUnknow 123.1990
原帖:http://topic.csdn.net/u/20110314/11/6459c365-ea61-4942-a22a-3a8a11c32899.html?seed=79231246&r=72139222#r_72139222
更多关于number类型,请参考:
1.http://www.ixora.com.au/notes/numeric_datatypes.htm
2.http://www.ixora.com.au/notes/number_representation.htm?number=12.00#example
3.http://blog.csdn.net/BOBO12082119/archive/2011/03/01/6215763.aspx
4.http://topic.csdn.net/u/20110307/13/e168a4d6-a5e6-434c-ac65-4ea620d7da12.html |
|
|