mysql输出如何控制小数点位数

mysql输出如何控制小数点位数,第1张

1、你可以在创建表的时候限制小数位数,如create table xxx(abc decimal(10,2))

其中decimal(10,2),就是指整数10位,保留2位小数

2、你可以查询的时候用round()函数四舍五入保留小数,如select round(abc,2)

mysql中小数点用decimal(x,y)进行存储,

示例如下,

1、创建测试表,create table test_decimal(id int, fee_value decimal(20,3))

2、插入测试数据,

insert into test_decimal values(1,12.2)

insert into test_decimal values(3,33.789)

insert into test_decimal values(6666,555.332)

3、查询表中所有记录,select * from test_decimal t

4、小数转整,可以用floor或round函数,select t.*, floor(fee_value) as fee1, round(fee_value) fee2 from test_decimal t

对于小数位可能很长(比如excel的浮点数)不确定长度的浮点型数字,double类型才是正确的选择。decimal多用于定长小数的情况。首先:要确定你的问题是什么。1、是小数位数后面的0不需要?那double会自动忽略后面所有的0.2、是数据被剪切(小数位数变少)了?那么可以有2个解决方案。A、使用double定义该字段,然后重新导入数据。B、使用decimal,但是小数位的总长度必须大于你需要导入的数据小数点的总长度。且字段总长度必须大于等于“小数点左边的长度+小数点右边的长度”以上所有解决方案都解决不了已经导入的数据的小数值,因为丢失在导入的时候已经发生了。所以要保证正确性,必须重新导入。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6097161.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-14
下一篇 2023-03-14

发表评论

登录后才能评论

评论列表(0条)

保存