zoukankan      html  css  js  c++  java
  • mysql 除法运算保留小数的用法

    说明:刚开始用的round(值1/值2*100,1) 结果没出效果,才搜到decimal函数

    在工作中会遇到计算小数而且需要显现出小数末尾的0,我们会用到DECIMAL这个函数,这是一个函数非常强悍:具体用法DECIMAL(P,D);
    在上面的语法中:

    P是表示有效数字数的精度。 P范围为1〜65。
    D是表示小数点后的位数。 D的范围是0~30。MySQL要求D小于或等于(<=)P。
    DECIMAL(P,D)表示列可以存储D位小数的P位数。十进制列的实际范围取决于精度和刻度。

    与INT数据类型一样,DECIMAL类型也具有UNSIGNED和ZEROFILL属性。 如果使用UNSIGNED属性,则DECIMAL UNSIGNED的列将不接受负值。

    如果使用ZEROFILL,MySQL将把显示值填充到0以显示由列定义指定的宽度。 另外,如果我们对DECIMAL列使用ZERO FILL,MySQL将自动将UNSIGNED属性添加到列。

    测试案例:
    数据库的表结构

     



    第一种计算方式:

    select convert(t/100,decimal(15,2)) as money from test


    select convert(t/100,decimal(10,2)) as money from test


    第二种计算方式
    返回数字X,截断到D小数位。 如果D为0,结果没有小数点或小数部分。 D是负数,导致值X的小数点左边的D数字变为零。(简单说就是没有四舍五入)

    SELECT TRUNCATE(t/100,2) as g from test


    select convert(4545.1366,decimal(10,3));


    原文链接:https://blog.csdn.net/JGnewbie/article/details/81571333

  • 相关阅读:
    [NOIP2013]华容道
    [随笔]冲NOIP一等奖。。
    [NOIP2015]联合权值
    [随笔]我回来啦!
    [考试]20151105
    [知识点]最近公共祖先LCA
    [BZOJ3751/NOIP2014]解方程
    [旧版][知识点]字符串Hash
    NOIP2016题解
    NOIP2016游记
  • 原文地址:https://www.cnblogs.com/Formulate0303/p/11962640.html
Copyright © 2011-2022 走看看