decimal这个数据类型的⽤法
decimal是整数数据类型
笔者在⽹上搜了好久,解释都晦涩难懂。最后通过亲⼿实践加课本知识得出结论如下:
decimal(M,N)
M表⽰:不包括⼩数点,不包括符号位,所能存数字的总位数(包括⼩数部分和整数部分)
N表⽰:⼩数部分数字的位数,由此可知整数部分的位数为M-N;
举个例⼦,
decimal(4,2) 能够表⽰的数的范围 -99.99到99.99;
decimal(4,1)能表⽰的范围,还要写吗?如果对⾃⼰⼼中的答案有怀疑,⾃⼰去实验吧。
特殊处理,
如果对于decimal(4,2)的列,输⼊下列值
输⼊是99.1 , 存储为99.10 ⾃动补全
输⼊是99.12 , 存储为99.12 正常处理
输⼊是99.123 ,存储为99,12 (四舍五⼊处理)
【注】:我实验的mysql版本是5.6以上,其他版本可能是截断处理,即输⼊99.129 存储为99.12,⽽不是99.13。 另外,四舍五⼊是从⼩数点后第三位开始
如 输⼊是 99.1249 存储为99.12。 换句话说四舍五⼊只看⼩数点后第三位。
---------------------