Mysql Полнотекстовый поиск - PullRequest
0 голосов
/ 25 июня 2010

Этот запрос выполняется только для данных, доступных в t1.ads_category, но не для двух других столбцов:

SELECT t1.id,
       t1.ads_type,
       t1.ads_category,
       t1.ads_subcat,
       t1.ads_title,
       t1.ads_title,
       t1.ads_description,
       t1.ads_city,
       t1.ads_location,
       t2.ads_image,
       t2.ads_activate,
       t2.postads_id 
  FROM postads t1 
  JOIN nextpostads t2 ON t1.id = t2.postads_id 
 WHERE MATCH(t1.ads_category,
             t1.ads_title, 
             t1.ads_description) AGAINST ('".$search_text."') 
   AND t1.ads_city='".strtolower($city_name_url[0])."' 
   AND  t1.ads_location='".$location_val."' 
   AND t2.ads_activate='Yes'

Что с этим не так?Есть ли какие-либо проблемы с ПОИСКОМ FULLTEXT. Я вижу, что количество элементов в Индексе FULLTEXT равно 23.Я новичок в FULLTEXT.

1 Ответ

1 голос
/ 25 июня 2010

Репост моего ответа на репост; -)

Вам необходимо создать полнотекстовый индекс для объединенных полей ads_category, ads_title и ads_description, а не для каждого отдельного столбца.

Например:

ALTER TABLE `postads` ADD FULLTEXT (
`ads_category` ,
`ads_title`,
`ads_description`
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...