![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| zone51 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
Привет всем! Помогите пожалуйста решить задачу. Есть в базе таблица а в таблице поле. И поле это текстовое. В поле хранятся вопросы или ответы на вопросы - простые типа 'Привет как дела?' и т д
Пользователь вводит в поле ввода строку или фразу типа 'привет', 'привет как дела' или какое то из слов. Требуется простой поиск без наворотов по каждому слову, фразе, идеально независимо от регистра или порядка. Пожскажите любые идеи или есть готовые опен-сорс решения. Спасибо. -------------------- The truth is out there |
|||
|
||||
| ArNic |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 278 Регистрация: 3.1.2007 Репутация: нет Всего: нет |
||||
|
||||
| zone51 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
ArNic,
Спасибо. Если честно не думал что LIKE может предоставить все что нужно - поиск вне зависимости от порядка слов и т д. Можете дать конкретный пример? -------------------- The truth is out there |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
я не автор, но все же могу заметить, что like: a) должно быть намного медленнее full text search, потому как только шаболн "<что-то>%" сможет использовать индекс. остальные более сложные запросы с индексом работать не смогут б) а как же "независимость от порядка слов"? генерировать все возможные перестановки? "%привет%как%дела%", "%как%привет%дела%" и ещё 4 варианта только для фразы из трех слов? когда только поиск имеет сложность O(n!) и используются механизмы перебора текста(like ищет как раз перебором - никакая оптимизация без дополнительных конструкций-индексов не представляется мне возможной) zone51, либо full text search, либо внешний относительно СУБД индексатор Sphinx. Варианты ещё есть, но я названные считаю достаточно быстрыми и достаточно гибкими(впрочем, за родной полнотекстовый поиск в mysql не уверен) Добавлено через 1 минуту и 22 секунды неужели, кроме независимости от порядка слов и от регистра есть ещё какие-то задачи? поиск по синонимам? поиск с учетом возможных орфографических ошибок? перевод с разных языков? |
|||
|
||||
| zone51 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
skyboy,
Спасибо. Нет нужен пока что минимум. Мне хотя бы в сторону куда копать, как можно проще вариант но чтобы давал осмысленные результаты. -------------------- The truth is out there |
|||
|
||||
| ArNic |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 278 Регистрация: 3.1.2007 Репутация: нет Всего: нет |
Тогда согласен, полнотекстовый поиск. Порядок не учел |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |