[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Расширенный поиск по базе
Bodich
Вот запрос для поиска :
$sql = "SELECT * FROM data WHERE title LIKE '%" . $word . "%' ORDER BY id LIMIT 10";

ищет слово хорошо !
словосочетание отлично !
но вот например если искать в значении -
"солнышко светит ярко " словосочитание - "светит солнышко" то увы (
а "светит" - найдет )
можно ли как то хитрее запрос ввести или вообще по другому искать ...
перерыл гугл не нашел ничего интересного



Спустя 4 минуты, 12 секунд (19.04.2012 - 13:47) glock18 написал(а):

Спустя 12 минут, 12 секунд (19.04.2012 - 13:59) T1grOK написал(а):
Полнотекстовый индекс

Спустя 4 минуты, 44 секунды (19.04.2012 - 14:04) Bodich написал(а):
Цитата (T1grOK @ 19.04.2012 - 11:59)
Полнотекстовый индекс

это как???

Спустя 25 минут, 6 секунд (19.04.2012 - 14:29) Bodich написал(а):
народ, как поиск реализуете ?? huh.gif

Спустя 2 часа, 13 минут, 38 секунд (19.04.2012 - 16:43) I++ написал(а):
В сыром тексте искать накладно.

Я использую схему такую:

Съешь еще этих мягких французских булочек

A + B + C + D + E + F

ABCDEF

мягких булок

D + F

DF

Ищу вхождение D в ABCDEF
Ищу вхождение F в ABCDEF

Сравниваю дальность между D F чем дальше тем меньше связь, услованая единица 0,1,2,3,4 и тд.

Порог значения количество слов поиска деленное на сумму растояний между поисковыми значениями.

2 / 1 = 2 порог константа 10.

Каждое слово проверяется на возможные склонения и множественные значения.

орфография проверяется по статье http://habrahabr.ru/post/50137/

Более быстрые методы не существуют на PHP хотя я пытался реализовать матрицу для более быстрого доступа к нужному участку на подобии B-root дерева и функции http://php.net/manual/ru/function.levenshtein.php но, это все хрень, гугло-код круче smile.gif (Слишком много памяти жрет.)

А вообще если ты не хочешь вникать во всю эту хрень, на которую я убил почти 2 года, можешь воспользоваться http://sphinxsearch.com/

P.S Это разумнейший подход, иные самопальные костыли, малоэффективны. И там нужен жесткий матан, который упрощает жизнь.

Спустя 39 минут, 22 секунды (19.04.2012 - 17:22) Bodich написал(а):
спасибо, сложновато это все как то, вот тут еще нашел -
http://www.php.su/articles/?cat=phpdb&page=015
у сфинкса куча настроек нужно день разбирать huh.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.