Какой самый быстрый способ сделать поиск по нескольким полям в MySQL? - PullRequest
2 голосов
/ 12 августа 2010

Я пытаюсь создать действительно быструю поисковую систему для базы данных MySQL с несколькими полями.

Проблема заключается в том, что мне нужно сопоставить значение (ключевое слово) с несколькими полями в% как% подход.

Я не против актуальности (порядок фиксирован), просто производительность.Запросы довольно сложные (lotta JOINS, 3 или 4 таблицы на запрос).

Сначала я подумал о MATCH ... ПРОТИВ , но я не думаю, что это хорошая идеясделать так много индексов FULLTEXT.Может быть, с помощью сгенерированного PHP ИЛИ LIKE% значения% , но ... действительно ли это эффективно?

Есть идеи?

1 Ответ

2 голосов
/ 12 августа 2010
Индекс

A FULLTEXT - возможно, всего один, охватывающий все столбцы, которые вы будете запрашивать, - вероятно, ваш самый лучший выбор.Я полагаю, что MySQL сможет применить к этому гораздо лучшую оптимизацию и будет намного быстрее, чем множество OR x LIKE y операторов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...