您的位置:首页 > 数据库 > MySQL

MySql数据类型分析(数值(小数型)类型) Part2

2014-04-09 10:57 483 查看
一.小数型 包括两种类型:

1.浮点型 Float(M,D)

2.定点型 decimal(M,D)

二.M,D分析

1.小数型中的M和整数中的M
大不相同;

2.整数中的M 与所存数据的大小没有关系,只在有ZEROFILL修饰符时,控制显示填充零的为数有关。

3.小数中的M与所存数据的大小有必然关系,假如 申请类型为:float(6,2):其中,6代表小数类型为 不包括小数点在内为6为,其中2代表小数位,因此,能存入-9999.99到+9999.99

4.如果Float(6,2) 带有标示符 Unsigned,则此数据类型的存储范围为:0.00到+9999.99

举例:

创建表goods:

create table goods

(

name varchar(10) not null default ' ',

price float(6,2) not null default 0.00

) charset utf8;

插入一条数据:

insert into goods

(name,price)

values

('跑步机',688.896);

点击回车,执行成功;



三.大家可以看到,已经成功插入到goods表中,

其中,小数 688.896 经舍入法 进行了截取,

Mysql中默认的舍入法 是 银行家舍入法,下一篇将说明
银行家舍入法。

四.定点类型

decimal(M,D)

分析:

1.定点类型和浮点类型 用法差不多,区别就是定点类型的精度比浮点类型的精度高。

举例:

在foods表中增加两列

alter table foods

add

bigprice float(9,2) not null default 0.00;

alter table foods

add

decimprice decimal(9,2) not null default 0.00;

插入一条数据:

insert into foods

(name,bigprice
,decimprice )

values

('自行车',1234567.23,1234567.23);

执行结果:



由此看出,decimal类型更精确

五.小数类型在内存中占用的字节

小数类型在内存中占用的字节数是固定的,并不是说,你输入M的值大,字节数就会变大。

小数类型 在计算机中占用4个字节,或8个字节,小数类型的计算非常复杂。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: