zoukankan      html  css  js  c++  java
  • ORCLE 小数点显示问题

    orcle有的时候你会发现PL/SQL里查出来的结果跟程序得到的DataTable得到的结果不一样。

    小数位值不一样。

    例:

    列名 NUMBER(18,5)

    PL/SQL里查出来的结果:1234567890123.78000

    DataTable得到的结果:1234567890123.77778

    而其实插入的值就是1234567890123.77778

    那么解决方法就是把数值转成字符:

    方法很多,第二种方法很好,第一种小数点前的0会被去掉,下面说两种:

    一:

    to_char(round(列名,5),'FM99999999999999.00000')

    二:自定义函数 :

    CREATE OR REPLACE FUNCTION FLOAT_TO_CHAR
    (
    PARMIN VARCHAR2 --要转换的字符
    )
    RETURN VARCHAR --返回值 如:.214 返回0.214\1.234 返回1.234
    IS
    V_PARMIN VARCHAR2(20);
    BEGIN
    --*****************************************--
    --将小数转换字符型保留前面的0
    --*****************************************--
    IF SUBSTR(PARMIN,1,1)='.' THEN
    BEGIN
    V_PARMIN := '0'||PARMIN;
    RETURN V_PARMIN;
    END;
    ELSE
    BEGIN
    RETURN PARMIN;
    END;
    END IF;
    END FLOAT_TO_CHAR;

     

  • 相关阅读:
    第九章 表单效验
    第八章 使用jQuery操作DOM
    第七章 jQuery中的事件与动画
    CDQZ Day2
    HDU 3783
    CDQZ Day1
    BZOJ 2935/ Poi 1999 原始生物
    Luogu P1801 黑匣子_NOI导刊2010提高(06)
    Intelligent Poetry
    Great Expectations
  • 原文地址:https://www.cnblogs.com/xbding/p/2984228.html
Copyright © 2011-2022 走看看