Mysql如何实现保留小数点后指定位数并做进位(向上取)处理?
程序员文章站
2022-07-04 09:28:01
今天遇到在中需要保留两位小数,并且需要向上取进位的计算方式,即:12.1134 ----> 12.12,在java中使用bigdecimal.round_up,很容易处理(说明:这里的数字都是...
今天遇到在中需要保留两位小数,并且需要向上取进位的计算方式,即:12.1134 ----> 12.12,在java中使用bigdecimal.round_up,很容易处理(说明:这里的数字都是正数,负数比较特殊,需要用到round_ceiling,在此不再具体介绍)。
但是在数据库中,我没有找到类似的方法。round与ceil或ceiling都没有办法直接完成这个操作,但是方法总比困难多:
假如我们想保留两位小数,被向上取进位处理:可以把我们的值先乘以100,然后进行ceil函数处理,再缩小到原来的大小即可,即:
select ceil(value*100)/100
这样就可以满足要求了。