|
|
|
| Вообщем в новостях необходимо реаизовать поиск по названию и по содержимому новости
Вот табица
CREATE TABLE `news` (
`id` int(11) NOT NULL auto_increment,
`name` text NOT NULL,
`krn` varchar(100) NOT NULL default '',
`news` text NOT NULL,
`data` date NOT NULL default '0000-00-00',
PRIMARY KEY (`id`),
FULLTEXT KEY `name` (`name`,`news`)
)
|
Где name - название новости, news - содержимое
Правильно ли создан запрос в частности
FULLTEXT KEY `name` (`name`,`news`)
|
дя организации полнотекстового поиска по названию и содержимому | |
|
|
|
|
|
|
|
для: ols
(28.11.2008 в 17:20)
| | Правильно. Правда следует помнить, что поиск включает только те результаты которые встречается менее чем в половите записей таблицы, поэтому если записей 1-2 - ничего принципиально не ищется. | |
|
|
|
|
|
|
|
для: cheops
(29.11.2008 в 02:53)
| | тоесть если в таблице скажем 20 записей, из них 2 удовлетворяют условию поиска , то запрос на поиск ничего не выдаст? | |
|
|
|
|
|
|
|
для: ols
(29.11.2008 в 10:03)
| | Выдает, а вот если искомый результа находится в 11 записях из 20 (более половины всех записей), то не выдает. | |
|
|
|
|
|
|
|
для: cheops
(29.11.2008 в 12:34)
| | А ясно...А есть альтернативы, ведь какими-то методами решается эти проблемы? | |
|
|
|
|
|
|
|
для: ols
(29.11.2008 в 12:42)
| | Под проблемой что имеется в виду? Поиск даже в том случае, если записи находятся более чем в половине записей? Можно воспользоваться логическим режимом полнотекстового поиска - в нем это ограничение снято. | |
|
|
|
|
|
|
|
для: cheops
(29.11.2008 в 12:45)
| | >Под проблемой что имеется в виду? Поиск даже в том случае, если записи находятся более чем в половине записей?
Да.
>Можно воспользоваться логическим режимом полнотекстового поиска - в нем это ограничение снято.
Можно ли где почитать про логический режим? | |
|
|
|
|
|
|
|
для: ols
(29.11.2008 в 15:04)
| | Если быстро, то вместо конструкции
MATCH (name,author) AGAINST ('$temp')
|
Для поиска в логическом режиме следует использовать конструкцию
MATCH (name,author) AGAINST ('$temp*' IN BOOLEAN MODE)
|
Более подробно об символах и правилах полнотекстового поиска в логическом режиме можно почитать либо в мануале, либо в одной из наших книг. | |
|
|
|