Размеры и количество байт для числовых типов данных в MySQL:
Тип | Кол-во байт | От | До |
TINYINT | 1 | -128 | 127 |
SMALLINT | 2 | -32768 | 32767 |
MEDIUMINT | 3 | -8388608 | 8388607 |
INT | 4 | -2147483648 | 2147483647 |
BIGINT | 8 | -9223372036854775808 | 9223372036854775807 |
Если использовать ключевое слово UNSIGNED, то величина интервала останется такая же. Но отсчет начнется с 0. Например, для TINYINT промежуток будет от 0 до 255.
Если дополнительно указан необязательный атрибут ZEROFILL, свободные позиции по умолчанию заполняются нолями.
Например, для столбца, объявленного как INT(5) ZEROFILL, величина 85 извлекается как 00085 .
int(11) — означает, что это максимум 11 знаков, не только цифры, но и возможный знак минус.
Отличие: int(3) от tinyint(3)
int(3) — занимает 4 байта, дозволенные значения от -99 до 999.
tinyint(3) — 1 байт, дозволенные значения от -99 до 127.