Лучше три по пятьдесят или одна на стопятьдесят?

Статус
В этой теме нельзя размещать новые ответы.

Andronik

Новичок
Лучше три по пятьдесят или одна на стопятьдесят?

Что оптимальнее для скорости выполнения запроса?
Есть три таблицы примерно по пятьдесят колонок. Каждая из трех содержит информацию об одном объекте и id объекта, соответственно, во всех трех совпадают. На данный момент получается, таблица разбита на три таблицы. Поиск объекта делается так: Выполняются три запроса с условиями поиска к каждой из трех таблиц. Получаются три массива результатов с id. Потом уже в скрипте сравниваются массивы на совпадение id во всех трех, в результате формируется результативный массив с конечными id.
Логичнее ли было бы слить три таблицы в одну и искать по ней, делая не три, а один запрос к базе? Но колонок в таблице получится около 150...
 

zerkms

TDD infected
Команда форума
хватит маяться дурью.
у тебя что-то тормозит? профайлер в руки или конкретный вопрос с описанием ситуации и деталями.

ничего не тормозит? радуйся и читай на досуге http://dev.mysql.com/doc/refman/5.0/en/optimization.html

ps: по заголовку темы думал, что разговор пойдёт об алкоголе.
 

DiMA

php.spb.ru
Команда форума
у меня есть таблица в 200 колонок
проблем нет, кроме ограничение числа индексов на одну таблицу (200 индексов не дает создать)
 

zerkms

TDD infected
Команда форума
DiMA
ты невнимательно читал вопрос? :)
у тебя 200 колонок - потому что так нужно. а у него 150, потому что "оптимезацея".
 

Фанат

oncle terrible
Команда форума
вообще, я слабо представляю себе структуру, у которой 150 критериев поиска. недвижимость какая-то?
здесь уже будет, имхо, дыра в юзабилити.

-~{}~ 10.03.09 11:41:

но как тогда их совмещать?
скажем, метро у нас в одной таблице, а количество комнат - в другой. получается, из второй мы выбираем все двухкомнатные, и получаем громадную выборку, которую рефиним в скрипте. странный подход
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху