Что было бы наиболее эффективным способом сделать этот поиск (MySQL или текст)? - PullRequest
0 голосов
/ 08 марта 2010

Предположим, у меня есть 500 строк данных, каждая с абзацем текста (как этот абзац). Вот и все. Я хочу сделать поиск, который соответствует части слов. (% LIKE%, а не FULL_TEXT)

Что будет быстрее?

  1. SELECT * FROM ... WHERE LIKE "% query%"; Это создаст нагрузку на сервер базы данных.
  2. Выбрать все. Затем просмотрите каждый из них и выполните .find> = 0 . Это приведет к загрузке веб-сервера.

Это веб-сайт, и люди будут часто искать.

Ответы [ 2 ]

1 голос
/ 08 марта 2010

Нам очень трудно определить, не зная:

  • количество текста для поиска
  • загрузка и настройка на сервере базы данных
  • загрузка и настройка на веб-сервере
  • и т. Д. И т. Д. *

С учетом сказанного я бы концептуально определенно выбрал бы первый сценарий. Это должно быть молниеносно при поиске только 500 строк.

0 голосов
/ 08 марта 2010

Вы можете использовать полнотекстовый поиск, если вы используете движок myisam. http://dev.mysql.com/doc/refman/5.1/en/fulltext-query-expansion.html

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