В контексте сохранения простоты запросов, при разработке структуры таблиц необходимо учитывать несколько моментов. Во-первых, если часто запрашиваемая таблица также часто изменяется, то использование полей постоянной длины по сравнению с переменной длиной позволяет увеличить производительность. По определению поля постоянной длины занимают определенный объем пространства независимо от содержания, а поля переменной длины изменяются в зависимости от хранимых в них данных. Таким образом, при использовании полей постоянной длины, вы вынуждены тратить больше дискового пространства. Однако, если вы преследуете цель повышения скорости обработки данных, MySQL будет производительней при полях постоянной длины, чем переменной.
Если вы, все-таки, будете использовать поля постоянной длины, следите, чтобы размер столбца был минимальным. Например, при создании таблицы лучше просто создать столбец CHAR (255), чем волноваться о том, насколько большим нужно его сделать. На практике для ваших потребностей вам может понадобиться лишь половина этого размера. Уменьшение размера столбца не только освобождает место, но и означает меньше операций ввода/вывода при обработке. Вполне ясно, что полное удаление совсем ненужных столбцов также может повысить производительность.
Еще один способ увеличить производительность - использовать для часто изменяемых таблиц команду OPTIMIZE TABLE (более подробно она описана в главе 15, "Обслуживание, резервное копирование и восстановление"). Частые изменения приводят к фрагментации, что в свою очередь приводит к дополнительным затратам времени на чтение неиспользуемых блоков при получении нужных данных.
При рассмотрении способов увеличения производительности, убедитесь, нужны ли вам все таблицы. Опять-таки, при создании таблицы неплохой идеей было бы разбить данные на отдельные таблицы, но вовлечение дополнительных таблиц приводит к снижению производительности. Можно ли поместить данные в одну таблицу?
Если вы по какой-либо причине не можете это сделать, попробуйте согласовать объе­диняемые столбцы. Запросы будут производиться эффективнее, если столбцы, по которым происходит объединение, имеют один тип данных и длину.
Фактор размера
Вот подсказка о модифицировании таблиц под использование полей постоянной длины: если столбцу в часто изменяемой таблице нельзя задать постоянную длину, тогда попробуйте переместить этот столбец в отдельную таблицу, а оставшимся столбцам в исходной таблице задать постоянную длину. Хоть это и не всегда срабатывает, но все же такой способ повышения производительности от использования полей постоянной длины считается более рациональным по сравнению с полями переменной длины.
Обратите внимание, что хранение строк в таблицах InnoDB или BDB отличается от хранения в таблицах MylSAM или ISAM. Использование в этих таблицах вместо столбцов постоянного размера столбцов переменного размера не приводит к увеличению производительности.

Ссылки
Оптимизация запросов - это почти целая наука, и ее невозможно изложить в одной главе. Подробнее об этом можно узнать на Web-страницах http://www. mysql.com/doc/en/MySQL_Optimisation.html и http://www.mysql.com/doc/ en/Tips.html