此查询仅针对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 SEARCH有什么问题。我在FULLTEXT INDEX看到基数是23。我是FULLTEXT的新手。
答案 0 :(得分:1)
重新发布我对转贴的回答; - )
您需要在组合字段ads_category,ads_title和ads_description上创建全文索引,而不是在每个列上创建。
E.g:
ALTER TABLE `postads` ADD FULLTEXT (
`ads_category` ,
`ads_title`,
`ads_description`
);