У меня есть таблица, созданная как так:Что означает ограничение по размеру индекса MySQL?
CREATE TABLE `my_table` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`info` varchar(50) DEFAULT NULL,
`some_more_info` smallint(5) unsigned NOT NULL
PRIMARY KEY (`id`),
KEY `my_index` (`some_more_info`,`info`(24)),
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8
Моего вопрос о втором ключе, который называется my_index
. Что означает предел «(24)»? Фактический размер столбца равен 50, но индекс составляет всего 24 символа.
Означает ли это, что MySQL индексирует только первые 24 символа столбца info
?
См. Статью [MySQL docs] (http://dev.mysql.com/doc/refman/4.1/en/create-index.html) и посмотрите комментарии к «Индексы могут быть созданы, которые используют только ведущая часть значений столбцов ... " –