我们在开发的过程中经常会使用到sql语句,那么对于数值类型的字段我们经常会对数值进行四舍五入的操作,那么怎么才能四舍五入呢,笔者来告诉大家(笔者做示范的是mysql数据库,可能会与其他类型的数据库有差别)
round(a,b)函数
1
select round(12.456)) from dual;结果为12round函数中如果第二个参数没有值,那么默认就是0
2
select round(12.456,2)) from dual;结果为12.46round函数中如果第二个参数为2,就是小数点后保留两位的意思
3
select round(12.456,2)) from dual;结果为12round函数中如果第二个参数为0,效果和第一步是一样的
4
select round(1543.456,-1)) from dual;结果为1540round函数中如果第二个参数为-1,就是小数点前1位开始舍弃
5
select round(1543.456,-3)) from dual;结果为2000round函数中如果第二个参数为-3,百位上是5,进一,四舍五入成2000
decimal(a,b)函数
1
select cast('123.456' as decimal(38)) from dual;结果是:123decimal(a,b)函数第二个参数b如果不写就是默认0,b不能是负数;
2
select cast('123.456' as decimal(38,2)) from dual;结果:123.46这里的38是这个小数的位数有多少位(38位已经这种类型的极限了)后面的2就是小数点后取两位的意思