• 技术文章 >数据库 >mysql教程

    mysql怎么实现除法保留两位小数

    青灯夜游青灯夜游2022-01-06 14:34:20原创107

    mysql除法保留两位小数的方法:1、利用“DECIMAL(P,D)”函数,语法“convert(值1/值2,decimal(15,2))”;2、利用TRUNCATE()函数,语法“TRUNCATE(值1/值2,2)”。

    本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

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

    在上面的语法中:

    DECIMAL(P,D)表示列可以存储D位小数的P位数。十进制列的实际范围取决于精度和刻度。

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

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

    测试案例:

    数据库的表结构

    dd5e4b17129d80c222a2db3b12ddea6b.png

    0007ad001ce5a8fccafde903389cd367.png

    第一种计算方式:

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

    917e657890419ea8763c6f116cedcb29.png

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

    1b5297548730f280b41ebc869fbbed33.png

    第二种计算方式

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

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

    03ed67e5e1b3cb3a30300ca759bf3a1a.png

    TRUNCATE(x,d):函数返回被舍去至小数点后d位的数字x。若d的值为0,则结果不带有小数点或不带有小数部分。若d设为负数,则截去(归零)x小数点左起第d位开始后面所有低位的值。

    【相关推荐:mysql视频教程

    以上就是mysql怎么实现除法保留两位小数的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:mysql需要配置环境变量吗 下一篇:mysql内连接和外连接有什么区别

    相关文章推荐

    • 如何查看mysql安装位置• mysql错误日志在哪• php7连不上mysql8怎么解决• mysql怎么将数据转为16进制• mysql如何设置大小写不敏感

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网