mysql中floast和double的类型转换问题 | 您所在的位置:网站首页 › double转换到float › mysql中floast和double的类型转换问题 |
数值类型转换问题,当从一个字段从double 变为 float 精度不变,而从float 转变为double 时会发生精度的改变。 实验结果如下: #创建表: CREATE TABLE `t2` ( `id1` float(5,2) DEFAULT NULL, `id2` double(5,2) DEFAULT NULL, `id3` decimal(5,2) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; insert into t2 values (1.23,1.23,1.23); #修改字段类型: alter table t2 modify id2 double; alter table t2 modify id2 float; #查看表结构和查询结果 root@localhost : test 05:17:09> desc t2; +-------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+-------+ | id1 | float(5,2) | YES | | NULL | | | id2 | float | YES | | NULL | | | id3 | decimal(5,2) | YES | | NULL | | +-------+--------------+------+-----+---------+-------+ root@localhost : test 05:17:07> select * from t2; +------+------+------+ | id1 | id2 | id3 | +------+------+------+ | 1.23 | 1.23 | 1.23 | +------+------+------+ #重新修改id2为double,并查询结果 root@localhost : test 05:17:19> alter table t2 modify id2 double; root@localhost : test 05:17:32> select * from t2; +------+--------------------+------+ | id1 | id2 | id3 | +------+--------------------+------+ | 1.23 | 1.2300000190734863 | 1.23 | +------+--------------------+------+ |
CopyRight 2018-2019 实验室设备网 版权所有 |