sql >> Base de Datos >  >> RDS >> Mysql

Almacenando datos estadísticos, ¿necesito DECIMAL, FLOAT o DOUBLE?

Este enlace hace un buen trabajo al explicar lo que está buscando. Esto es lo que dice:

Todos estos tres tipos se pueden especificar mediante los siguientes parámetros (tamaño, d). Donde tamaño es el tamaño total de la Cadena y d representa la precisión. Por ejemplo, para almacenar un número como 1234.567, establecerá el tipo de datos en DOBLE (7, 3), donde 7 es el número total de dígitos y 3 es el número de dígitos que siguen al punto decimal.

FLOAT y DOUBLE, ambos representan números de punto flotante. FLOTANTE es para precisión simple, mientras que DOBLE es para números de precisión doble. Una precisión de 0 a 23 da como resultado una columna FLOAT de precisión simple de 4 bytes. Una precisión de 24 a 53 da como resultado una columna DOUBLE de precisión doble de 8 bytes. FLOAT tiene una precisión de aproximadamente 7 decimales y DOBLE hasta 14.

La declaración y el funcionamiento de Decimal es similar a Double. Pero hay una gran diferencia entre los valores de coma flotante y los valores decimales (numéricos). Usamos el tipo de datos DECIMAL para almacenar valores numéricos exactos, donde no queremos precisión sino valores exactos y precisos. Un tipo Decimal puede almacenar un máximo de 65 dígitos, con 30 dígitos después del punto decimal.

Entonces, para obtener el valor más exacto y preciso, Decimal sería la mejor opción.