mysql如何实现除法保留两位小数

avatar
作者
筋斗云
阅读量:13

本篇内容介绍了“mysql如何实现除法保留两位小数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

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属性添加到列。

测试案例:

数据库的表结构

mysql如何实现除法保留两位小数

mysql如何实现除法保留两位小数

第一种计算方式:

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

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

mysql如何实现除法保留两位小数

第二种计算方式

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

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

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

“mysql如何实现除法保留两位小数”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!