输入的浮点数与小数位,
比如0.123,小数位2----输出0.12
比如.123,小数位2----输出0.12
比如.1,小数位2----输出0.10
比如.199,小数位2----输出0.20
比如123.199,小数位4----输出123.1990

解决方案 »

  1.   


    select to_char(0.123,999990.99),
           to_char(.123,999990.99),
           to_char(123.199,999990.9999) 
    from dualTO_CHAR(0. TO_CHAR(.1 TO_CHAR(123.
    ---------- ---------- ------------
          0.12       0.12     123.1990
      

  2.   

    to_char(44,99.999)
    to_char(22,00.000)
      

  3.   


    --number数据类型
    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:
    SQL> select * from test_t;
    /*
    COL_1     COL_2
    ----- ---------
     0.12 
     0.12 
     0.10 
     0.20 
           123.1990
    */
    --方法2,使用nvl函数和to_char函数:
    SQL> select nvl(to_char(col_1,990.99),'Unknow') col_1,
      2         nvl(to_char(col_2,990.9999),'Unknow') col_2
      3         from test_t;
    /*
    COL_1   COL_2
    ------- ---------
       0.12 Unknow
       0.12 Unknow
       0.10 Unknow
       0.20 Unknow
    Unknow   123.1990
    */
      

  4.   

    oracle中number数据类型的详解