老师我实验和课程里的不一样
来源:2-15 测试浮点类型
Wonwayshon
2020-11-11 10:27:53


在test_float表中4.125只有decimal的四舍五入了,其他的并没有,后使用4.126测试全部四舍五入,为什么5在float和double均被舍弃而只有decimal5入呢?
以下是我的代码
-- 测试浮点数
CREATE TABLE test_float(
a FLOAT(4,2),
b DOUBLE(4,2),
c DECIMAL(4,2)
);
INSERT test_float(a,b,c) VALUES(4.124,4.125,4.126);INSERT test_float(a,b,c) VALUES(4.125,4.125,4.125);
1回答
同学你好,都会进行四舍五入的。
1、因为decimal是严格按照指定的精度进行四舍五入的,而float和double则是系统自动进行了四舍五入,不可控。
例如,当小数位是1的时候,float是四舍五入的,举例如下:

相似问题