CHAR(5)
всегда будут использовать 5 байт пространства (10 в многобайтных кодировках, так как версии 4.1), так как каждый символ может хранить 255 разных символов (или даже больше в многобайтовых кодировках).
Беззнаковый SMALLINT
(0..65535) займет 2, без знака MEDIUMINT
(0 .... 16,7 миллионов) 3 байта.
Итог: Использование типа CHAR для цифровых данных - это пустая трата пространства.
Что касается двух других вопросов:
ли уникальный индекс столбца INT работают быстрее, чем CHAR (5)?
Очень, очень вероятно, да, потому что индекс не должен быть буквенно-цифровой и может работать с меньшим количеством данных
ли SELECT MAX() на колонке INT быстрее MAX() на col5 CHAR (5)?
Чрезвычайно вероятно да, потому что для запуска числовой функции на колонке CHAR, тип броска должен быть выполнен на каждой записи.
Ссылка:
В этом столбце не выполняются арифметические операции, их номера билетов, которые в зависимости от способа обновления строки изменяются. –