DOUBLE (or REAL) and FLOAT are alternatives to the DECIMAL type. They're designed to store approximations of values as opposed to exact values.
\!h FLOAT
FLOAT[(width, decimals)] [UNSIGNED] [ZEROFILL] or FLOAT[(precision)] [UNSIGNED] [ZEROFILL]
-- Stores floating-point numbers
-- Two optional syntaxes:
-- 1. Allows an optional number of decimals and an optional display width.
-- 2. Allows an optional 'precision' that controls the accuracy of the approximation measured in bits.
\!h DOUBLE
DOUBLE[(width, decimals)] [UNSIGNED] [ZEROFILL]
-- Stores floating-point numbers
-- One optional syntax which allows an optional number of decimals and an optional display width.