我应该使用什么MYSQL数据类型来存储64位双精度?
我想存储,但我对MYSQL中的所有内容感到困惑,例如我应该使用什么MYSQL数据类型来存储64位双精度?,mysql,database,database-design,floating-point,double,Mysql,Database,Database Design,Floating Point,Double,我想存储,但我对MYSQL中的所有内容感到困惑,例如FLOAT(M,D),REAL(M,D),DOUBLE(M,D),FLOAT,双精度(M,D),REAL,DOUBLE,DECIMAL(M,D),和NUMERIC。哪一种最适合存储双精度浮点格式?如果我需要指定M或D,我应该指定什么?要存储64位(8字节)浮点数,请使用双精度或其别名/等效物双精度。它们是一样的FLOAT是一个单精度32位数字,REAL可能是一个,具体取决于服务器配置,所以请远离该数字 除非有理由,否则不要指定(M,D)值,因为
FLOAT(M,D)
,REAL(M,D)
,DOUBLE(M,D)
,FLOAT
,双精度(M,D)
,REAL
,DOUBLE
,DECIMAL(M,D)
,和NUMERIC
。哪一种最适合存储双精度浮点格式?如果我需要指定M
或D
,我应该指定什么?要存储64位(8字节)浮点数,请使用双精度
或其别名/等效物双精度
。它们是一样的FLOAT
是一个单精度32位数字,REAL
可能是一个,具体取决于服务器配置,所以请远离该数字
除非有理由,否则不要指定(M,D)值,因为这样就不会得到“传统”的64位数字
标准免责声明,除非您完全理解浮点数存储和操作固有的不精确性,否则不要使用这些选项中的任何一个,而是使用DECIMAL
。例如,货币值几乎总是DECIMAL
列的候选值