FLOAT[(M,D)] [UNSIGNED] [ZEROFILL]
A small (single-precision) floating-point number. Permissible values
are -3.402823466E+38 to -1.175494351E-38, 0, and 1.175494351E-38 to
3.402823466E+38. These are the theoretical limits, based on the IEEE
standard. The actual range might be slightly smaller depending on your
hardware or operating system.
M is the total number of digits and D is the number of digits following
the decimal point. If M and D are omitted, values are stored to the
limits permitted by the hardware. A single-precision floating-point
number is accurate to approximately 7 decimal places.
FLOAT(M,D) is a nonstandard MySQL extension. As of MySQL 8.0.17, this
syntax is deprecated and support for it will be removed in a future
UNSIGNED, if specified, disallows negative values. As of MySQL 8.0.17,
the UNSIGNED attribute is deprecated for columns of type FLOAT (and any
synonyms) and support for it will be removed in a future MySQL version.
Consider using a simple CHECK constraint instead for such columns.
Using FLOAT might give you some unexpected problems because all
calculations in MySQL are done with double precision.