我应该使用什么MYSQL数据类型来存储64位双精度?

我应该使用什么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)值,因为

我想存储,但我对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)值,因为这样就不会得到“传统”的64位数字

标准免责声明,除非您完全理解浮点数存储和操作固有的不精确性,否则不要使用这些选项中的任何一个,而是使用
DECIMAL
。例如,货币值几乎总是
DECIMAL
列的候选值