DOUBLE represent approximate data types.
|FLOAT||4 bytes||23 significant bits / ~7 decimal digits||10^+/-38|
|DOUBLE||8 bytes||53 significant bits / ~16 decimal digits||10^+/-308|
REAL is a synonym for
DOUBLE PRECISION is a synonym for
Although MySQL also permits (M,D) qualifier, do not use it. (M,D) means that values can be stored with up to M total digits, where D can be after the decimal. Numbers will be rounded twice or truncated; this will cause more trouble than benefit.
Because floating-point values are approximate and not stored as exact values, attempts to treat them as exact in comparisons may lead to problems. Note in particular that a
FLOAT value rarely equals a