Как выполнить поиск на моем веб-сайте

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

На сайте насчитывается около 20 таблиц, и мне нужен поиск для поиска по всем 20 таблицам.

Любой может указать мне, какие запросы mysql мне нужно построить?

Related of "Как выполнить поиск на моем веб-сайте"

Прежде всего, как насчет добавления пользовательского веб-поиска Google на ваш сайт?

Трудный путь: вы должны сделать запрос для каждой из ваших таблиц и LIMIT (с помощью LIKE в текстовых столбцах или с помощью полнотекстовой индексации, если ваше программное обеспечение базы данных поддерживает это), результат будет получен в результате X (например, десять). В вашем коде каким-то образом оценивайте эти результаты и показывайте лучшие результаты X.

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

Поисковые системы. Мой докторский диплом. Прежде всего, вы должны задать себе вопрос. Какой тип поиска вы хотите предложить пользователю. Если пользователь будет четко знать, что они ищут, например веб-сайт на основе продукта, вы должны предоставить поисковую систему на основе метаданных. Например, пользователи будут искать определенный продукт или тип продукта. Это, как правило, довольно легко обеспечить.

Следующее – ваш знакомый веб-поисковик, такой как Google. Google здесь нацелен на совершенно другой рынок. Типичный пользователь не знает точно, что они ищут. Они просто знают, что они ищут что-то общее с самолетами, например. Теперь Google должен попытаться выяснить, что является результатом, который, скорее всего, будет соответствовать этому и будет наиболее актуальным.

Я знаю, что у Google есть невероятно сложная и оптимизированная система, но из памяти, если вы хотите идти этим путем, вам нужно создать что-то, называемое инвертированным индексным файлом. Затем вам нужно начать думать о тезаурусе, потому что, если пользователь вводит в cat, тогда вы также должны предоставлять результаты, содержащие слово feline. Также деревья слов, потому что пользователь, набравший в кошке результат кошек, также будет иметь значение.

Я уверен, что если вы предоставляете поисковую систему для своего сайта, то она, скорее всего, будет поисковой машиной метаданных, и в этом случае вы сможете опрокинуть свое собственное решение. Если нет, и вы ищете второй тип, то почему бы не использовать сервисы Google. Они обеспечивают пользовательский поиск, который будет работать на вашем собственном веб-сайте.

Используйте Sphinx или если вы используете ZF – Lucene.

1 .: Установите индекс FULLTEXT в полях с содержимым и используйте полнотекстовый поиск. Mysql предоставляет: http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html

или

2: Взгляните на поиск lucene в Zend Framework: http://framework.zend.com/manual/en/zend.search.lucene.html

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