El rango de números del DECIMAL type es mucho mayor que para un INTEGER o BIGINT. El mayor número que puedes almacenar en un DECIMAL (65, 0) es de 65 nueves. El número más grande en un BIGINT es 18446744073709551615.
DECIMAL (x, 0) es a menudo un poco más caro para números pequeños. Considere usar un INTEGER type definido si sus números están en el rango de uno de ellos.
El requisito de almacenamiento en bytes de un decimal (x, 0) campo depende de la x
acuerdo con esta fórmula:
Storage = x/9 + Leftover
Leftover = round_up((x % 9)/2) (i.e., about half of the leftover digits)
Usted puede leer más sobre el almacenamiento requirements for numeric types en el manual de MySQL y comparar para ti.
Dado el problema que tenía al leer y comprender la pregunta en primer lugar, no estoy de acuerdo. Gracias por borrar tu 'respuesta'. – Leo
Bien, esos comentarios previos se refieren a http://stackoverflow.com/users/166390/pst quien entró aquí no leyó mi pregunta, pisoteó todo, editó el título, borró sus pistas y se escapó. – Leo
Esta pregunta ha sufrido una cantidad sorprendente de ediciones, la mayoría de las cuales han hecho que sea más difícil de leer y un número similar lo restaure. Si debe agregar su propio trozo de carnicería, como mínimo, no corrija mi gramática original en inglés con la versión incorrecta del segundo idioma. – Leo