Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Как работают FullText индексы (Ронзин Роман) 15/10/2002 - 15:17:49
      Re: Как работают FullText индексы (Anton Kovalenko) 15/10/2002 - 21:31:20
      Re: Как работают FullText индексы (Sergey S. Kostyliov) 16/10/2002 - 00:29:17

> Original message text:
> From: Ронзин Роман - 15/10/2002 - 15:17:49
> Subject:Как работают FullText индексы
> -----------------
> Дано : таблица с тремя текстовыми полями (название товара, производитель, описание).
> Надо: организовать fulltext поиск либо по названию, либо по производителю либо по всем полям.
> Вопрос: Поиск осуществляется только по проиндексированым полям.
> Как организовать индексы? Сделать общий индекс, общий плюс индексы на каждое отдельное поле?
> Как вообще устроен fulltext индекс?
>
> И еще. Чем отличается поиск "in boolean mode" ?
> С этим такая проблема: при поиске короткого слова (например HP)
> поиск в обычном режиме ничего не находит, а в булевском все ок.
> И как, интерестно, поступать с всякими +/- и.т.д. управляющими символами? Как сделать так, чтоб они воспринимальсь как обычные?
> Не слеши же перед ними ставить...
>
> Вот такие вопросы. Если у кого есть ответы - пишите
>


From: Sergey S. Kostyliov - 16/10/2002 - 00:29:17
Subject:Как работают FullText индексы
-----------------
В основном ответы лежат в документации
http://www.mysql.com/doc/en/Fulltext_Search.html

<cut>
> Как вообще устроен fulltext индекс?
На первую часть ответить не могу - Sergey Golubchik
как то писал об этом в mysql@lists.mysql.com - но что именно он там писал сейчас уже не вспомню - пороюсь завтра в старых письмах :).

> И еще. Чем отличается поиск "in boolean mode" ?
> С этим такая проблема: при поиске короткого слова
> (например HP)
> поиск в обычном режиме ничего не находит,
> а в булевском все ок.
"The search for the word MySQL produces no results in the above example, because that word is present in more than half the rows."
То есть HP скорее всего встретилось более чем в 50% процентах строк.
Там же в мануале ниже про Boolean mode
"(note: the 50% threshold is not used)"

> И как, интерестно, поступать с всякими +/- и.т.д.
> управляющими символами? Как сделать так, чтоб они
> воспринимальсь как обычные?"
The phrase, that is enclosed in double quotes ", matches only rows that contain this phrase literally, as it was typed.
То есть если нам надо например найти CD-Writer
select product_id from full_search where match(name,manufacturer,data) against('+"CD-Writer"' in boolean mode);


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
5083



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |