Home > Articles > MySQL Numeric Types - Reference

MySQL Numeric Types

Type Bytes Signed Unsigned
TINYINT 1 -128 to 127 0 to 255
SMALLINT 2 -32768 to 32767 0 to 65535
MEDIUMINT 3 -8388608 to 8388607 0 to 16777215
INT, INTEGER 4 -2147483648 to 2147483647 0 to 4294967295
BIGINT 8 -9223372036854775808 to 9223372036854775807 0 to 18446744073709551615
FLOAT 4
FLOAT(p) varies
DOUBLE [PRECISION], REAL 8
DECIMAL(M,D), NUMERIC(M,D) varies
BIT(M) ~ M+7

Best for Zip+4: INT UNSIGNED
Best for xxx-xxx-xxxx phone: BIGINT UNSIGNED

From MySQL 5.4 Reference Manual: Numeric Types