码迷,mamicode.com
首页 > 其他好文 > 详细

double减法不准确的那些事儿

时间:2016-05-27 18:43:53      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:double减法

CREATE TABLE `helei` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `num1` double DEFAULT NULL,
  `num2` double DEFAULT NULL,
  `num3` decimal(5,3) DEFAULT NULL,
  `num4` decimal(5,3) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=latin1;


mysql> select * from helei;
+----+------+------+-------+-------+
| id | num1 | num2 | num3  | num4  |
+----+------+------+-------+-------+
|  1 |    1 |    1 | 1.000 | 1.000 |
|  2 |    2 |    2 | 2.000 | 2.000 |
|  3 |    3 |    4 | 3.000 | 4.000 |
|  4 |    6 |    5 | 6.000 | 5.000 |
|  5 |  3.3 |  4.4 | 3.300 | 4.400 |
|  6 |  6.6 |  5.5 | 6.600 | 5.500 |
+----+------+------+-------+-------+
6 rows in set (0.00 sec)


mysql> select (num2-num1)num5,(num4-num3)num6 from helei;
+---------------------+--------+
| num5                | num6   |
+---------------------+--------+
|                   0 |  0.000 |
|                   0 |  0.000 |
|                   1 |  1.000 |
|                  -1 | -1.000 |
|  1.1000000000000005 |  1.100 |
| -1.0999999999999996 | -1.100 |
+---------------------+--------+
6 rows in set (0.00 sec)


可以看到double列的减法出现了问题,我们可用demical替换即可

本文出自 “岁伏” 博客,请务必保留此出处http://suifu.blog.51cto.com/9167728/1783861

double减法不准确的那些事儿

标签:double减法

原文地址:http://suifu.blog.51cto.com/9167728/1783861

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!