mysql中的双数据类型

Rip*_*aha 2 mysql phpmyadmin

我将我的专栏的长度之一定义为double(16,2)。这里 16 不是固定的。但是,2是固定的。虽然显示长度(16)会因计算而异。所以我想让它变长。

现在我的问题是 - 有没有办法只定义浮点数(即我的示例中的 2)并将长度(16)显示为变量?因为我不想占用不必要的空间。

dev*_*rCK 6

FLOAT 和 DOUBLE 类型表示近似数值数据值。

MySQL 对单精度值使用四个字节,对双精度值使用八个字节。

MySQL 也支持这个可选的精度规范,但精度值仅用于确定存储大小。0 到 23 之间的精度会产生一个 4 字节的单精度 FLOAT 列。从 24 到 53 的精度会产生一个 8 字节的双精度 DOUBLE 列。

MySQL 允许使用非标准语法:FLOAT(M,D) 或 REAL(M,D) 或 DOUBLE PRECISION(M,D)。这里的“(M,D)”是指最多可以存储M位的数值,其中D位可能在小数点后。

漂浮:

一个小的(单精度)浮点数。允许的值为 -3.402823466E+38 到 -1.175494351E-38、0 和 1.175494351E-38 到 3.402823466E+38。这些是基于 IEEE 标准的理论限制。实际范围可能略小,具体取决于您的硬件或操作系统。单精度浮点数精确到大约 7 个小数位。这不是必需的,默认为10,2, (如果省略 M 和 D,则值存储在硬件允许的范围内。)

双倍的:

M是总位数,D是小数点后的位数。如果省略 M 和 D,则将值存储到硬件允许的限制范围内。双精度浮点数精确到大约 15 位小数。这不是必需的,默认为16,4,其中 4 是小数位数。(如果省略 M 和 D,则将值存储到硬件允许的限制范围内。)

更多 http://dev.mysql.com/doc/refman/5.0/en/numeric-type-overview.html