Индексирование символьных типов
При построении индекса по строковым полям необходимо учитывать ограничение на длину ключа индекса.Максимальная используемая длина ключа индекса равна 1/4 размера страницы, то есть от 1024 (для страницы размером 4096) до 8192 байтов (для страницы размером 32768). Максимальная длина индексируемой строки на 9 байтов меньше, чем максимальная длина ключа.В таблице приведены данные для максимальной длины индексируемой строки (в символах) в зависимости от размера страницы и набора символов, её можно вычислить по следующей формуле:
max_char_length = FLOOR((page_size / 4 – 9) / N),где N — число байтов на представление символа.
| Размер страницы | Максимальная длинаиндексируемой строки для набора символов, байт/символ | ||||
|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 6 | |
| 4096 | 1015 | 507 | 338 | 253 | 169 | 
| 8192 | 2039 | 1019 | 679 | 509 | 339 | 
| 16384 | 4087 | 2043 | 1362 | 1021 | 681 | 
| 32768 | 8183 | 4091 | 2727 | 2045 | 1363 | 
| Note | В кодировках, нечувствительных к регистру (“_CI”), один символ в индексе будет занимать не 4, а 6 байт, поэтому максимальная длина ключа для страницы, например для страницы 4096 байт составит 169 символов. | 
Последовательность сортировки (COLLATE) тоже может повлиять на максимальную длину индексируемой строки.Полный список доступных наборов символов и нестандартных порядков сортировки доступен в приложенииНаборы символов и порядки сортировки.
CREATE DATABASE, Порядок сортировки, SELECT, WHERE, GROUP BY, ORDER BY