MySQL double类型字段的长度限制和小数点进位规则
结论:
- double类型,长度需大于等于小数点位数,若相等则整数部分必须为0
- 假设长度为3,小数点位数为2,则整数位数为3-2=1。
- 整数位数超出限制会导致插入失败
- 小数位数超出限制将对超出位从后往前依次进行五舍六入
验证结论:
表结构:
//两位小数,一位整数 CREATE TABLE test ( column_double double(3,2) )
插入语句:
insert into test(column_double) values(5.555); insert into test(column_double) values(5.556); insert into test(column_double) values(5.5556);//两位小数后是56超过五所以是入 insert into test(column_double) values(5.5549);//两位小数后是49未超过五所以是舍 insert into test(column_double) values(10.0);//报错
结果:
select * from test; // +---------------+ | column_double | +---------------+ | 5.55 | | 5.56 | | 5.56 | | 5.55 | +---------------+
参考文章:https://blog.csdn.net/qq_41960425/article/details/106713441