我需要将数据存储在数据库中,并且努力使小数或浮点数保持不变,因此需要一些帮助。以下是我的预期范围。我只需要知道需要为Mysql数据库中的列设置哪种数据类型。
1)7.2-9.2(步骤0.2这样7.4、7.6、8.2以及8.0等) 2)0-10.0(步长为0.25,所以0.25、1.25、2.75,还有整数5.0等)
答案 0 :(得分:0)
您可以使用decimal
,FLOAT
或DOUBLE
MySQL对单精度值使用四个字节,对双精度值使用八个字节。
FLOAT(M,D)或REAL(M,D)或DOUBLE PRECISION(M,D)。在这里(M,D)表示 最多可以存储M位数字,其中D 数字可能在小数点后。例如,定义的列 因为FLOAT(7,4)在显示时看起来像-999.9999。 MySQL执行 在存储值时四舍五入,因此如果您将999.00009插入到 FLOAT(7,4)列,近似结果为999.0001。
声明
DECIMAL
或NUMERIC列时,精度和小数位数 可以(通常是)指定的;例如:salary DECIMAL(5,2)在此示例中,5是精度,2是 规模。精度代表有效数字的位数 存储值,小数位数代表位数 可以存储在小数点后。如果比例为0, DECIMAL和NUMERIC值不包含小数点或小数 部分。
示例
CREATE TABLE analyzes (COL1 DOUBLE(10,4), col2 decimal(7,5) ) ;
INSERT INTO analyzes VALUES(7.2,7.2 ),(0.2,0.2),(5.0,5.0);